【发布时间】:2014-05-29 21:58:33
【问题描述】:
我在 PHP 中使用 Imagick 将 PDF 文件转换为 JPEG 时遇到了一些麻烦。 经过大量研究,我能够将 CMYK pdf 转换为 RGB jpg,而无需进行奇怪的颜色转换……但是现在,我的最后一个问题:文本完全别名!原始 PDF 文件中的文本未矢量化。
一个例子:
代码如下:
$imagick = new Imagick();
$imagick->setResolution(150,150);
$imagick->readImage('file.pdf');
//CMYK PROFILE
$icc = file_get_contents('USWebCoatedSWOP.icc');
$imagick->profileImage('icc', $icc);
$imagick->setImageColorspace(imagick::COLORSPACE_CMYK);
//RGB PROFILE
$icc = file_get_contents('sRGB_IEC61966-2-1_no_black_scaling.icc');
$imagick->profileImage('icc', $icc);
$imagick->setImageColorspace(imagick::COLORSPACE_RGB);
$imagick->setImageFormat( "jpg" );
$imagick->setImageCompression(imagick::COMPRESSION_JPEG);
$imagick->setImageCompressionQuality(90);
header( "Content-Type: image/jpeg" );
echo $imagick;
【问题讨论】:
-
你能发布一个示例 pdf 吗?
-
谢谢。似乎有一个重复的问题,这里有答案 - stackoverflow.com/a/16435640/778719 但是接受的答案对我不起作用,但也许我做错了什么。
-
@Danack 我真的不这么认为,因为我的问题最可能的原因是 Ghostscript...
-
糟糕 - 我昨天对错误的问题进行了近距离投票。然后撤销了接近投票,但是忘记删除评论了。
标签: php imagick antialiasing