我在 IText 编码了一个平面解码的PDF流,不幸的是我有一个干净的文字,但不能说明它的意思......在 PDF 32000 那里没有关于这个主题的文档......有没有关于此事的其他文档?
示例 的
q
0 0 1 rg
0 0 520 150 re
f
0 g
Q
q
BT
36 806 Td
ET
Q
答案 0 :(得分:17)
ISO 32000-1:2008(这是您称为 PDF 32000 的文档,不是吗?)记录示例流的所有内容,特别是看看第8章< strong>图形和9 文字:
q
8.4.2 图形状态堆栈: q运算符应将整个图形状态的副本推送到堆栈上。
0 0 1 rg
表74 颜色运算符: rg - 与RG相同,但用于非描边操作。
ibidem: RG - 将描边颜色空间设置为DeviceRGB(或DefaultRGB颜色空间;请参见8.6.5.6,“默认颜色空间”)并设置用于描边操作的颜色。每个操作数应为0.0(最小强度)和1.0(最大强度)之间的数字。
0 0 520 150 re
表59 路径构造运算符: re - 将矩形作为完整的子路径附加到当前路径,左下角(x,y)和维度wid和用户空间中的高度强>
f
表60 路径绘制运算符: f - 使用非零绕组编号规则填充路径以确定要填充的区域(请参见8.5.3.3.2,“非零绕组编号”规则”)。任何打开的子路径都应在填充之前隐式关闭。
0 g
表74 颜色运算符: g - 与G相同但用于非描边操作
ibidem: G - 将描边颜色空间设置为DeviceGray(或DefaultGray颜色空间;请参见8.6.5.6,“默认颜色空间”)并设置用于描边操作的灰度级。灰色应为0.0(黑色)和1.0(白色)之间的数字。
Q
q
8.4.2 图形状态堆栈: q运算符应将整个图形状态的副本压入堆栈。 Q运算符应通过从堆栈中弹出整个图形状态将其恢复到以前的值。
BT
9.4.1 常规(在9.4 文本对象中):文本对象以BT运算符开头,以ET运算符结束 < / p>
36 806 Td
表108 文本定位运算符: Td - 移动到下一行的开头,从当前行的开头偏移(tx,ty)。 tx和ty应表示以未缩放的文本空间单位表示的数字。更确切地说,该操作员应执行这些分配
ET
9.4.1 常规(在9.4 文本对象中):文本对象以BT运算符开头,以ET运算符结束 < / p>
Q
8.4.2 图形状态堆栈: Q运算符应通过从堆栈弹出整个图形状态将其恢复到以前的值。
如果您对某项或其他操作的详细信息有疑问,您可以在周围的明文中找到大量信息。如果在研究之后还有问题,请随时提出。
答案 1 :(得分:4)
所以基本上会这样:
1)从页面原点(左下角)绘制一个填充的100%蓝色矩形,宽度为520,高度为120个单位(约等于7.2 x 1.6英寸)
2)没有任何文本命令可以做任何事情。 “Td”运算符更改了文本矩阵,但由于页面上没有绘制文本,因此您将看不到任何内容。因为它嵌入在“q ... Q”对中,所以对页面上的任何内容都没有任何影响。