首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Imagick readImage陷入系统错误事件黑洞

Imagick readImage陷入系统错误事件黑洞
EN

Stack Overflow用户
提问于 2018-09-18 17:35:41
回答 1查看 730关注 0票数 0

我正在尝试安装imagick (到目前为止,这并不是一项容易的任务,但极大地帮助了在https://mlocati.github.io/articles/php-windows-imagick.html上使用过滤器),并在我的WAMP/Windows10 10/PHP7.0 webapp上运行,但我在readImage()调用上遇到了一个黑洞(日志文件只上升到‘检查点2')。

查看Windows系统事件日志,我可以看到错误级别的应用程序事件读取:

代码语言:javascript
复制
Faulting application name: httpd.exe, version: 2.4.23.0, time stamp: 0x5776399f
Faulting module name: php_imagick.dll, version: 7.0.10.0, time stamp: 0x58927660
Exception code: 0xc0000409
Fault offset: 0x000000000002468c
Faulting process ID: 0x4ba8
Faulting application start time: 0x01d44f71d980b2f3
Faulting application path: C:\wamp64\bin\apache\apache2.4.23\bin\httpd.exe
Faulting module path: C:\wamp64\bin\php\php7.0.18\ext\php_imagick.dll
Report ID: 1b3f5a6d-ed31-4fae-b73d-ebf0d17e9c94
Faulting package full name: 
Faulting package-relative application ID: 

此错误是通过我的WAMP运行以下代码时出现的

代码语言:javascript
复制
<?php
class Test  {
public function doTrace($msgTx) {
    $dt=date('[D M d H:i:s Y]', gmdate(time()));
    error_log($dt.$msgTx."\n",3, "C:/test.log" );
}
public function doTest() {
    $fn='C:/test.pdf'; 
    if ( file_exists($fn) ) {
        $im = new Imagick();
        $this->doTrace("checkpoint 1");
        $im->setResolution(300, 300); 

        $this->doTrace("checkpoint 2");
        $im->readImage($fn."[0]");    //[0] for the first page

        $this->doTrace("checkpoint 3");
        $im->setImageFormat('png');

        $this->doTrace("checkpoint 4");
        header('Content-Type: image/png');
        echo $im;

        $this->doTrace("checkpoint 5");
    }
    else {
        echo "Did not find $fn";
    }
}
}

$try = new Test();
$try->doTest();

?>

这只是我尝试readImage (http://php.net/manual/en/imagick.readimage.php#116812)手动条目的一个版本,那么这里有什么问题呢?我是否错误地安装了Imagick (php_imagick-3.4.3-7.0-ts-vc14-x64),还是其他什么东西?(注意,我可以让IM在一些简单的测试中工作)

我的phpinfo()是这样读的:

代码语言:javascript
复制
 imagick
 imagick module enabled
 imagick module version 3.4.3
 imagick classes    Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator, ImagickKernel
 Imagick compiled with ImageMagick version  ImageMagick 6.9.3-7 Q16 x64 2016-03-27 http://www.imagemagick.org
 Imagick using ImageMagick library version  ImageMagick 6.9.3-7 Q16 x64 2016-03-27 http://www.imagemagick.org
 ImageMagick copyright  Copyright (C) 1999-2015 ImageMagick Studio LLC
 ImageMagick release date   2016-03-27
 ImageMagick number of supported formats:   234
 ImageMagick supported formats  3FR, AAI, AI, ART, ARW, AVI, AVS, BGR, BGRA, BGRO, BIE, BMP, BMP2, BMP3, BRF, CAL, CALS, CANVAS, CAPTION, CIN, CIP, CLIP, CLIPBOARD, CMYK, CMYKA, CR2, CRW, CUR, CUT, DATA, DCM, DCR, DCX, DDS, DFONT, DJVU, DNG, DOT, DPS, DPX, DXT1, DXT5, EMF, EPDF, EPI, EPS, EPS2, EPS3, EPSF, EPSI, EPT, EPT2, EPT3, ERF, EXR, FAX, FITS, FPX, FRACTAL, FTS, G3, GIF, GIF87, GRADIENT, GRAY, GROUP4, GV, H, HALD, HDR, HISTOGRAM, HRZ, HTM, HTML, ICB, ICO, ICON, IIQ, INFO, INLINE, IPL, ISOBRL, ISOBRL6, J2C, J2K, JBG, JBIG, JNG, JNX, JP2, JPC, JPE, JPEG, JPG, JPM, JPS, JPT, JSON, K25, KDC, LABEL, M2V, M4V, MAC, MAGICK, MAP, MASK, MAT, MATTE, MEF, MIFF, MKV, MNG, MONO, MOV, MP4, MPC, MPEG, MPG, MRW, MSL, MSVG, MTV, MVG, NEF, NRW, NULL, ORF, OTB, OTF, PAL, PALM, PAM, PANGO, PATTERN, PBM, PCD, PCDS, PCL, PCT, PCX, PDB, PDF, PDFA, PEF, PES, PFA, PFB, PFM, PGM, PICON, PICT, PIX, PJPEG, PLASMA, PNG, PNG00, PNG24, PNG32, PNG48, PNG64, PNG8, PNM, PPM, PREVIEW, PS, PS2, PS3, PSB, PSD, PTIF, PWP, RADIAL-GRADIENT, RAF, RAS, RAW, RGB, RGBA, RGBO, RGF, RLA, RLE, RMF, RW2, SCR, SCREENSHOT, SCT, SFW, SGI, SHTML, SIX, SIXEL, SPARSE-COLOR, SR2, SRF, STEGANO, SUN, SVG, SVGZ, TEXT, TGA, THUMBNAIL, TIFF, TIFF64, TILE, TIM, TTC, TTF, TXT, UBRL, UBRL6, UIL, UYVY, VDA, VICAR, VID, VIFF, VIPS, VST, WBMP, WEBP, WMF, WMV, WPG, X3F, XBM, XC, XCF, XPM, XPS, XV, YCbCr, YCbCrA, YUV

谢谢

Abe

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-19 14:30:06

因此,由于没有明显的解决方案,我决定尝试一个不同的方向,看看是否可以通过命令行运行转换命令。这促使我不得不安装Ghostscript (https://www.ghostscript.com/download/gsdnld.html)。

既然Ghostscript已经安装好了,PHP现在就开始工作了--我得到了PDF的第一页的图片。

我是否错过了安装说明(我不记得有提到Ghostscript )?

一个

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52391910

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档