You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP7.3使用Imagick将PDF转图片出现UnableToOpenBlob错误如何解决

PHP 7.3 环境下Imagick实现PDF转图片路径报错解决方案

问题复现

在PHP 7.3环境下使用Imagick实现PDF转图片功能时,运行如下代码:

$im = new Imagick();
$im->readimage('test.pdf'); 

收到报错信息:

Fatal error: Uncaught ImagickException: UnableToOpenBlob 'test.pdf': No such file or directory @ error/blob.c/OpenBlob/3315 in C:\xampp\htdocs\My codes\cURLs\php-curl-class\PDFs\pdf_to_img.php:40 Stack trace: #0 C:\xampp\htdocs\My codes\cURLs\php-curl-class\PDFs\pdf_to_img.php(40): Imagick->readImage('test.pdf') #1 {main} thrown in C:\xampp\htdocs\My codes\cURLs\php-curl-class\PDFs\pdf_to_img.php on line 40

改用绝对路径C:\xampp\htdocs\My codes\cURLs\php-curl-class\PDFs\test.pdf后,再次出现新报错:
调整后的代码:

$im = new Imagick();
$im->readimage('C:\xampp\htdocs\My codes\cURLs\php-curl-class\PDFs\test.pdf'); 

新报错信息:

Uncaught ImagickException: PDFDelegateFailed `The system cannot find the file specified. ' @ error/pdf.c/ReadPDFImage/794 in C:\xampp\htdocs\My codes\cURLs\php-curl-class\PDFs\pdf_to_img.php:41 Stack trace: #0 C:\xampp\htdocs\My codes\cURLs\php-curl-class\PDFs\pdf_to_img.php(41): Imagick->readImage('C:\\xampp\\htdocs...') #1 {main} thrown in C:\xampp\htdocs\My codes\cURLs\php-curl-class\PDFs\pdf_to_img.php on line 41

运行环境

  • Windows 10
  • XAMPP
  • PHP 7.3.27 (cli) (built: Feb 2 2021 20:46:26) ( ZTS MSVC15 (Visual C++ 2017) x64 )
  • 线程安全(Thread Safety)已启用
  • 架构为x64

解决方法

该问题由Windows系统路径反斜杠转义规则导致,仅需要对路径首尾段的反斜杠进行转义即可,调整后代码如下:

$im->readimage("C:\\xampp\htdocs\My codes\cURLs\php-curl-class\PDFs\\test.pdf");

内容的提问来源于stack exchange,提问作者Siya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 03:45:00