2012-05-09 40 views
2

我正在从PDF文件的第一页创建缩略​​图图像。我几乎每天腻在网络上可用的解决方案,使ImageMagick的运行,但我仍然得到以下错误Imagick不工作

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. 将extension = php_imagick.dll添加到我的php.ini文件中。
  5. 重新启动Apache服务器和Windows很多次:)
  6. 我使用codeigniter框架。
  7. 的PHP 5.3.10,阿帕奇2.2.21和MySQL 5.5.20,WAMP 2.2和赢得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和转换啄。

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

感谢

+0

检查'的phpinfo()'来看看你是否有一个名为'imagick'第一的延伸。这应该确认'imagick'扩展是否正确安装。 – F21

+0

不,它没有imagick扩展 –

回答

2

我不知道从何处取得您的二进制文件,但似乎喜欢的事我经历了大约一个月前。我尝试过的一些二进制文件会显示在phpinfo()中,但拒绝工作,而其他人甚至不会在phpinfo()中显示。

然后我就按照我的问题here继续编译我自己的二进制文件。

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

你可以从这里下载:http://min.us/mtg0Z66BI

让我知道它是否适合你:)

+0

我正在使用64x操作系统。它会起作用吗? –

+0

,我会看看我是否能建立一个64版本:) – F21

+0

所以我应该尝试你的64倍或没有解决办法? :) –

0

如果仅创建的JPG JPG提示添加到exec()命令,它会比快Imagick。

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

我怀疑Imagick没有正确

+0

你的意思是包括-define jpeg选项会使执行命令快吗? –

+0

不确定使用pdf,但它只能读取足够的数据到内存中以创建JPG,因此速度更快。一年前我进行了一些速度测试:http://www.rubblewebs.co.uk/imagemagick/speed/Speed_tests_1.pdf – Bonzo

1

我的服务器上安装了PECL,imagick扩展只能与mod_mpm_prefork工作 - 它不mod_mpm_worker.so工作或mod_mpm_event.so

这可能是你的问题。