"An error exists on this page" 与路径相关的 Acrobat 错误



我有一个生成pdf文件的工具。出于某种原因,Adobe给了我";此页面上存在错误";所以我简化了pdf,问题似乎来自流中的(x,y(l路径。但我不知道到底是什么问题。

正如您在以下图像中看到的,只需删除一些路径部分,文档就会变得有效。当然,当我在代码中进行这些更改时,我会对偏移量进行必要的更改。请注意,我将在下面提到的3条路径开头的(x,y(m[x,y]h之间的路径。

看看下面的例子:

原始流-不工作

stream
q
1991.040 1277.520 m
1991.040 583.681 l
1052.640 583.681 l
1052.640 578.521 l
1052.040 578.521 l
1052.040 532.321 l
1127.880 532.321 l
1127.880 533.159 l
1187.880 533.159 l
1187.880 532.321 l
1206.720 532.321 l
1206.720 532.922 l
1211.880 532.922 l
1211.880 572.040 l
1615.800 572.040 l
1615.800 532.922 l
1621.080 532.922 l
1621.080 532.321 l
1639.800 532.321 l
1639.800 533.159 l
1699.800 533.159 l
1699.800 532.321 l
1778.160 532.321 l
1778.160 532.922 l
1783.440 532.922 l
1783.440 572.040 l
1981.440 572.040 l
1981.440 522.960 l
1989.840 522.960 l
1989.840 522.361 l
2002.680 522.361 l
2002.680 597.959 l
2051.760 597.959 l
2051.760 605.882 l
2002.680 605.882 l
2002.680 752.159 l
2054.280 803.760 l
2054.399 804.000 l
2016.000 842.400 l
2010.120 842.400 l
2010.120 841.802 l
2004.360 841.802 l
2004.360 851.161 l
2002.680 851.161 l
2002.680 1009.679 l
2004.360 1009.679 l
2004.360 1017.600 l
2002.680 1017.600 l
2002.680 1164.000 l
2054.399 1215.720 l
2004.960 1265.160 l
2004.840 1265.160 l
2004.840 1272.240 l
2004.360 1272.240 l
2004.360 1277.520 l
1991.040 1277.520 l
h
2019.720 1218.600 m
2019.360 1218.480 l
2019.000 1218.360 l
2018.880 1218.240 l
2018.640 1218.120 l
2018.520 1218.000 l
2018.280 1217.880 l
2018.040 1217.400 l
2017.920 1217.280 l
2017.560 1216.560 l
2017.440 1215.720 l
2017.560 1215.600 l
2017.560 1214.880 l
2017.680 1214.880 l
2017.680 1214.640 l
2017.800 1214.640 l
2017.800 1214.400 l
2017.920 1214.400 l
2017.920 1214.160 l
2018.040 1214.160 l
2018.040 1213.920 l
2018.160 1213.920 l
2018.160 1213.680 l
2018.280 1213.680 l
2018.280 1213.440 l
2018.520 1213.440 l
2018.640 1213.320 l
2018.880 1213.200 l
2019.000 1213.080 l
2019.720 1212.840 l
2021.280 1212.720 l
2021.280 1212.840 l
2022.000 1213.080 l
2022.240 1213.200 l
2022.720 1213.680 l
2022.840 1213.920 l
2022.960 1214.040 l
2023.080 1214.280 l
2023.320 1215.000 l
2023.440 1216.440 l
2023.320 1216.440 l
2023.320 1216.800 l
2023.200 1216.800 l
2023.200 1217.160 l
2023.080 1217.160 l
2023.080 1217.400 l
2022.240 1218.240 l
2022.000 1218.360 l
2021.280 1218.600 l
2019.720 1218.600 l
h
2017.200 809.282 m
2016.840 809.158 l
2016.480 809.042 l
2016.120 808.681 l
2015.880 808.561 l
2015.760 808.321 l
2015.400 807.959 l
2015.280 807.600 l
2015.160 807.360 l
2015.040 806.401 l
2015.160 806.280 l
2015.160 805.560 l
2015.280 805.560 l
2015.280 805.202 l
2015.400 805.202 l
2015.400 804.841 l
2015.520 804.841 l
2015.880 804.480 l
2015.880 804.240 l
2016.120 804.240 l
2016.480 803.880 l
2017.200 803.522 l
2018.760 803.402 l
2018.760 803.522 l
2019.120 803.642 l
2019.600 803.880 l
2020.440 804.720 l
2020.920 805.682 l
2021.040 807.122 l
2020.920 807.122 l
2020.920 807.360 l
2020.800 807.360 l
2020.800 807.600 l
2020.680 807.600 l
2020.680 807.840 l
2020.560 807.840 l
2020.560 808.080 l
2019.720 808.921 l
2019.480 809.042 l
2018.760 809.282 l
2017.200 809.282 l
h
0.235 0.000 0.000 0.235 0.000 0.000 cm
1.000 g
4465.690 2217.310 m
8720.500 2217.310 l
8720.500 5422.810 l
4465.690 5422.810 l
4465.690 2217.310 l
h
W
n
f
Q
q
0.000 0.000 m
3456.000 0.000 l
3456.000 0.359 l
0.000 0.359 l
0.000 0.000 l
h
W
n
0.235 0.000 0.000 0.235 0.000 0.000 cm
1 J
1 j
10.000 M
1.528 w
0.000 G
14669.500 0.000 m
0.000 0.000 l
S
Q
q
0.351 0.000 0.000 0.359 3370.650 600.986 cm
29 0.00 0.00 -1 0.000 1.000 cm
/Im1 Do
Q
q
1.000 0.000 0.000 -1.000 3176.000 2155.000 cm
275 0.00 0.00 -51 0.000 51.000 cm
/Im2 Do
Q
endstream

简化了所有3个路径块-工作

stream
q
1991.040 1277.520 m
1991.040 583.681 l
1991.040 1277.520 l
h
2019.720 1218.600 m
2019.360 1218.480 l
2019.720 1218.600 l
h
2017.200 809.282 m
2016.840 809.158 l
2017.200 809.282 l
h
0.235 0.000 0.000 0.235 0.000 0.000 cm
1.000 g
4465.690 2217.310 m
8720.500 2217.310 l
8720.500 5422.810 l
4465.690 5422.810 l
4465.690 2217.310 l
h
f
Q
q
0.000 0.000 m
3456.000 0.000 l
3456.000 0.359 l
0.000 0.359 l
0.000 0.000 l
h
W
n
0.235 0.000 0.000 0.235 0.000 0.000 cm
1 J
1 j
10.000 M
1.528 w
0.000 G
14669.500 0.000 m
0.000 0.000 l
S
Q
q
0.351 0.000 0.000 0.359 3370.650 600.986 cm
29 0.00 0.00 -1 0.000 1.000 cm
/Im1 Do
Q
q
1.000 0.000 0.000 -1.000 3176.000 2155.000 cm
275 0.00 0.00 -51 0.000 51.000 cm
/Im2 Do
Q
endstream

我不会发布所有的样品,但它们的工作原理如下:

  1. 简化所有3条路径(如上所示(-有效
  2. 以相同的方式只简化一条路径-不起作用
  3. 以相同的方式简化(第一个和第二个(/(第二个和第三个(/
  4. 此外,当我刚刚从所有3个块中随机删除一些(x,y(l行时,它也起到了的作用

注意:最后一种情况让我认为(x,y(行的数量可能有问题。就像允许的最大数量。

它你需要的样本文件:PDF样本

实际上,流的完整版和简化版都有错误:

  1. 在定义路径期间更改当前变换矩阵和填充颜色:

    ...
    h
    0.235 0.000 0.000 0.235 0.000  0.000 cm
    1.000 g
    4465.690 2217.310 m
    ...
    

    这是不允许的。开始定义路径后,只允许使用路径定义指令,直到出现可选的路径剪裁指令和路径绘制指令。

  2. (仅在完整流中(按顺序应用两个路径绘制指令:

    n
    f
    

    这是不允许的。在路径绘制指令之后,路径就消失了。在执行下一个路径绘制指令之前,您需要定义一个新路径。

我不知道修复这些问题是否会让你的pdf工作。为了允许检查您是否必须共享有问题的pdf。


作为旁白。。。在Adobe Acrobat中打开两个变体后,您会说

只需删除一些路径部分,文档就会变得有效。

下面没有。Acrobat对错误非常宽容。如果Acrobat没有抱怨pdf,并按照您的预期显示它,那么这并不意味着pdf是有效的。为了确保有效性,您必须对照pdf规范检查您的pdf。


在您共享PDF后,我通过Adobe Preflight运行了完整的PDF(配置文件"报告PDF语法问题"(。它报告警告

  • 操作员的内容流状态无效(1页上有1个匹配项(

    这发生在我上面已经指出无效的cmg运算符处。

  • 不平衡的q和q运算符(1页上有1个匹配项(

  • 内容流分析结束时未使用的操作数(1页上有1个匹配项(

    这需要更多的检查。最终发现,流的Length属性太小。你使用3329,但实际上大约是3393

在删除无效运算符并修复流长度后,这个飞行前配置文件(我的旧Acrobat9.5(不再发现问题。尽管如此,Adobe Reader仍然对PDF不满意。。。


还有一些尝试。。。

  • 如果从上面提到的nf序列中删除n,您实际上可以看到绘制的内容
  • 对于您的所有文件,Adobe Acrobat 9.5都会显示一条错误消息。显然,AcrobatDC更容易混淆
  • 如果删除图像绘制说明/Im1 Do/Im2 Do,Adobe会很高兴。显然,它们也有问题

最新更新