我使用PDF解析器从pdf文档中提取行。它在特定文档生成的pdf上失败。它失败的最小pdf有一个1单元1行表,但是流显示一个2单元1行表。我有以下问题:-
re运算符是用来做什么的?这是pdf :-

以下是有关的资料:
stream
q 0.12 0 0 0.12 0 0 cm
/R7 gs
q
647 5996 m
700 5996 l
700 5885 l
647 5885 l
h
W n
0 0 0 rg
q
8.33333 0 0 8.33333 0 0 cm BT
/R8 11.04 Tf
0.998087 0 0 1 77.64 709.2 Tm
()Tj
ET
Q
Q
q
700 5996 m
746 5996 l
746 5885 l
700 5885 l
h
W n
0 0 0 rg
q
8.33333 0 0 8.33333 0 0 cm BT
/R8 11.04 Tf
0.998087 0 0 1 84 709.2 Tm
()Tj
ET
Q
Q
0 0 0 rg
600 5996 4 4 re
f
600 5996 4 4 re
f
604 5996 3892 4 re
f
4496 5996 4 4 re
f
4496 5996 4 4 re
f
600 5884 4 112 re
f
600 5880 4 4 re
f
600 5880 4 4 re
f
604 5880 3892 4 re
f
4496 5884 4 112 re
f
4496 5880 4 4 re
f
4496 5880 4 4 re
f
q
8.33333 0 0 8.33333 0 0 cm BT
/R8 11.04 Tf
0.998087 0 0 1 72 695.28 Tm
()Tj
ET
Q
Q
endstream 下面是使用上面的m和l指令绘制的图像:

发布于 2019-08-05 13:05:33
流根本不显示任何单元格。只有标记的PDF可能对表格和表格单元格有一定的认识,但是PDF看起来没有标记。
你(考虑到你的问题标题)的意思似乎是序列
647 5996 m
700 5996 l
700 5885 l
647 5885 l
h
W n和
700 5996 m
746 5996 l
746 5885 l
700 5885 l
h
W n但是他们所做的就是将当前的剪辑路径与一个矩形相交。因此,以下绘图操作仅限于各自的矩形。在许多情况下,在PDF中都可以找到这样的限制,表格单元格只是其中之一,而这样的剪辑路径更改甚至对表格单元格来说都是不必要的。
此外,考虑到前面的变换矩阵的变化
0.12 0 0 0.12 0 0 cm上面的矩形相当小,每个长方形可能都足够大,足以容纳一个字符。
它们是长方形。
非常小的高度和/或宽度,但仍然矩形。
它们是填充的矩形,参f。f算子。
长话短说,我们认为是表格单元格的区域周围的“线”实际上是充满矩形的:
604 5996 3892 4 re
600 5884 4 112 re
604 5880 3892 4 re
4496 5884 4 112 re此外,单元格的角被画成很小的正方形(每个角落两次):
600 5996 4 4 re
600 5996 4 4 re
4496 5996 4 4 re
4496 5996 4 4 re
600 5880 4 4 re
600 5880 4 4 re
4496 5880 4 4 re
4496 5880 4 4 re因此,这些re指令为您提供了我们认为的表单元格的边框边缘和角。
你看到的具体指令是PDF指令。因此,您的打印应用程序将创建它们。
当然,您的打印应用程序会创建它们,因为它就是这样解释MS Word输出的.
发布于 2019-08-05 11:26:58
可爱的PDF作者显然(从他们的网页快速浏览)使用Windows打印系统。通常,在这种情况下,您从MS打印,MS Word将尝试使用Windows方法绘制线条和其他项目,然后打印机驱动程序(在本例中是可爱的PDF Writer )将其转换为PDF命令。中间阶段,首先呈现到PostScript,然后转换成PDF也是可能的。
因此,这意味着MS Word是负责的事实,两个细胞被绘制。
我只看到一个矩形的图像中的PDF,你张贴,所以我不知道在这里发生了什么。另外,我无法解释其他命令。第二张图像中的矩形看起来可能是一对一打印的页面周围的一个框架,但是坐标看起来很奇怪,所以它也可能是其他的东西。
https://stackoverflow.com/questions/57356858
复制相似问题