我有一个客户要求为他的客户提供上传设施,但在上传之后要创建一个图像缩略图。
所有正常图像都可以,但他在谈论 .psd、.pdf、.eps、.ppt
环顾四周,我认为 imagemagick 和 ghostscript 可以满足其中的大部分需求,但我找不到 PPT 或 EPS 的解决方案。
我希望 imagemagick 能够像 psd 一样做 eps。
关于 EPS 或 PPT 文件格式的任何建议。
如果您能提供建议,谢谢。
我有一个客户要求为他的客户提供上传设施,但在上传之后要创建一个图像缩略图。
所有正常图像都可以,但他在谈论 .psd、.pdf、.eps、.ppt
环顾四周,我认为 imagemagick 和 ghostscript 可以满足其中的大部分需求,但我找不到 PPT 或 EPS 的解决方案。
我希望 imagemagick 能够像 psd 一样做 eps。
关于 EPS 或 PPT 文件格式的任何建议。
如果您能提供建议,谢谢。
我参加我认识的聚会迟到了,但是...
这是我用于 .PDF、.EPS 和 .AI 缩略图的内容。(假设安装了所有必要的 ImageMagick 发行版)
$file = 'filename.pdf.eps.ai';
$cache = $_SERVER['DOCUMENT_ROOT'].'/cache/';//ensure dir is writeable
$ext = "jpg";//just the extension
$dest = $cache.$file.'.'.$ext;
if (file_exists($dest)){
$img = new imagick();
$img->readImage($dest);
header( "Content-Type: image/jpg" );
echo $img;
exit;
} else {
$img = new imagick($_SERVER['DOCUMENT_ROOT'].'/'.$file.'[0]');
$img->setImageFormat($ext);
$width = $img->getImageheight();
//$img->cropImage($width, $width, 0, 0);
$img->scaleImage(105, 149, true);
$img->writeImage($dest);
header( "Content-Type: image/jpg" );
echo $img;
exit;
}
不知道它为什么有效,但它确实有效 - 一个代码来统治他们好吗?
PPT是一个PowerPoint演示文稿。因此,创建一个 PPT 图像需要一些可以完成此操作的库。
这里有一些资源可以帮助您。
EPS 是一种矢量格式,因此除非您将图像作为矢量对象,否则您将无法正确执行此操作。
您可以找到一些免费的图标集,并为所有 .ppt 文件使用默认图标,为所有 .eps 文件使用另一个图标。然后,您可以为所有无法转换为图像的文件格式(例如音频文件)进一步扩展此功能。不是完美的解决方案,但用户可能会觉得比仅仅拥有文本更舒服。
只是一些想法 - 这些东西都没有经过我自己的测试。
每股收益:
您应该能够使用ghostscript将您的 EPS 转换为 PDF 。使用 imagemagick 和 ghostscript,您可以将 PDF 转换为某种位图格式(GIF、PNG 或 JPG)。
PPT:
这似乎有点复杂。如果您使用的是 Windows 计算机,则可以在一个小型手写转换器中使用 Powerpoint API。另一种可能性可能是使用 Apache POI-HSLF,它是 Powerpoint 文件格式的 Java API。这将需要用于转换过程的 Java 程序。最后的手段可能是研究Powerpoint 二进制文件格式,看看是否有嵌入的缩略图(可能是用于 Windows 资源管理器中的文件图标)可以提取。