2

我正在从 pdf 文件的第一页创建缩略​​图。我几乎厌倦了网络上所有可用的解决方案以使 ImageMagick 运行,但我仍然收到以下错误

Fatal error: Class 'Imagick' not found in C:\wamp\www\mediabox\application\controllers\cron.php on line 153

到目前为止我所做的。

  1. 安装 GPL Ghostscript
  2. 安装 ImageMagick-6.7.6-Q16
  3. 在我的 php 安装的 ext 文件夹中下载并复制了 php_imagick.dll 文件。
  4. 在我的 php.ini 文件中添加了 extension=php_imagick.dll 行。
  5. 多次重启apache服务器和windows :)
  6. 我正在使用 codeigniter 框架。
  7. php 5.3.10、apache 2.2.21、mysql 5.5.20、wamp 2.2 和 win 7

在我的本地主机页面上加载的扩展类别“Imagemagick 未列出”

我写的代码是

$image = explode('.', $filename_new);
$image_name = 'files/import/' . $ftp_upload["path"] ."/". $image[0] .".jpg";
//exec("convert -colorspace RGB -geometry 300x400! -density 200 " .$pdf_file."[0] ". $image_name);  
$img = $image[0].".jpg" ;
$im = new Imagick($img);
$im->pingImage($img);
$im->readImage($img);
$im->thumbnailImage(100, null);
$im->writeImage( 'files/import/' . $ftp_upload["path"] ."/".$img);
$im->destroy();

exec 命令创建图像但速度很慢我想使用 Imagick 类创建缩略图图像,我希望它比 exec 和 convert thingy 更快。

任何想法我应该怎么做才能使 Imagick 类可用于我的 php ?

谢谢

4

3 回答 3

2

我不确定你从哪里得到你的二进制文件,但这似乎是我大约一个月前经历的事情。我尝试的一些二进制文件会phpinfo()出现在phpinfo().

然后我就按照我的问题在这里编译了我自己的二进制文件。

我刚刚去为你编译了这些二进制文件。它们适用于 x86,用 VC9 编译,有线程安全和非线程安全版本。版本为 3.1.0RC1(最新)。

你可以在这里下载它们:http: //min.us/mtg0Z66BI

请让我知道这对你有没有用 :)

于 2012-05-09T10:21:06.063 回答
1

在我的服务器上,pecl-imagick 扩展仅适用于 mod_mpm_prefork - 它不适用于 mod_mpm_worker.so 或 mod_mpm_event.so

那可能是你的问题。

于 2016-07-21T22:01:36.443 回答
0

如果您只创建 jpg 将 jpg 提示添加到 exec() 命令,这将比 Imagick 更快。

在读取图像之前使用 -define jpeg:size=200x200 - 200x200 是输出图像大小。

我怀疑 Imagick 没有正确安装

于 2012-05-09T11:54:04.717 回答