自制PDF含Image XObject在Acrobat打开时报110错误求助
PDF图像显示错误排查求助
我用自研Java小型PDF生成库创建了一个PDF,尝试在坐标(x=200, y=300)处放置一张5×5的RGB图像,但出现以下问题:
- 用PDF XChange Editor 10.4.4打开时,图像无法显示;
- 用Acrobat Reader打开时,弹出错误提示:“Error: There was a problem reading this document (110)”。
该PDF仅含一页,除目标图像外,同一坐标还绘制了一个矩形以确保页面有可显示内容。
测试图像是从零构建的RGB图像(含红、绿、蓝3个分量),每个采样点的每个分量为8位(1字节)。在PDF文件中,每个采样点按0xFF、0x00、0x00的顺序用3字节表示,总计5×5×3=75字节。
我已多次检查对象位置、字面名称、语法等,仍未找到问题,求助排查PDF中的错误。
附加说明
- 参考文档为PDF 32000-2008标准;
- 附上完整PDF代码,避免遗漏关键内容;
- /ProcSet仍包含/Text(通常PDF会有文本内容,删除后问题未改善,且PDF 1.4起该属性已废弃);
- 定义的Font未使用,PDF-ID及Info无实际意义;
- 图像名称“ATH_TEST-PNG-01-241216a.png”目前无实际作用,后续将用于嵌入PNG文件;
- 未声明Filter,以便直接查看字节内容。
完整PDF代码
%PDF-1.5 %–—˜™% % PROGRAM : --- % FILE : D:NNNNNNNNNN\ath_jrt_iopdf_testfile.pdf % TITLE : --- % PURPOSE : --- % AUTHOR : --- % CONTACT : --- % COMPANY : --- % CREATION : 20241225-062506Z(+000) % DATE : 20241225-062506Z(+000) % COMMENT : --- % INFO : --- % 1 0 obj << /Title (---) /Author (---) /Subject (---) /Keywords (---) /Creator (---) /CreationDate D:20241225064506 /ModDate D:20241225064506 >> endobj 2 0 obj << /Type /Catalog /Version 1.4 /Pages 6 0 R /PageLayout /SinglePage >> endobj 3 0 obj << /Type /Page /Parent 6 0 R /MediaBox [ 0 0 595 842] /Contents 4 0 R /Rotate 0.0 /Resources << /ProcSet [ /PDF /Text /ImageC ] /Font << /F01 7 0 R >> /XObject << /XO01 8 0 R >> >> >> endobj 4 0 obj << /Length 5 0 R >> stream 200.000000 300.000000 5.000000 5.000000 re S q 1.000000 0.000000 -0.000000 1.000000 200.000000 300.000000 cm 1.000000 0.000000 -0.000000 1.000000 0.000000 0.000000 cm /XO01 Do Q endstream endobj 5 0 obj 184 endobj 6 0 obj << /Type /Pages /Kids [ 3 0 R ] /Count 1 >> endobj 7 0 obj << /Type /Font /Subtype /Type1 /BaseFont /Helvetica /Encoding /WinAnsiEncoding >> endobj 8 0 obj << /Length 9 0 R /Type /XObject /Subtype /Image /Name ATH_TEST-PNG-01-241216a.png /Width 5 /Height 5 /ColorSpace /DeviceRGB /BitsPerComponent 8 >> stream ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ endstream endobj 9 0 obj 75 endobj xref 0 10 0000000000 65535 f 0000000290 00000 n 0000000441 00000 n 0000000527 00000 n 0000000727 00000 n 0000000963 00000 n 0000000982 00000 n 0000001041 00000 n 0000001138 00000 n 0000001392 00000 n trailer << /Size 10 /Root 2 0 R /Info 1 0 R /ID [ (01010101ABABAB)(01010101ABABAB)] >> startxref 1410 %%EOF
内容的提问来源于stack exchange,提问作者ATH
相关产品推荐
相关产品推荐

