Pdf将字体颜色设置为文本

时间:2013-03-06 07:23:48

标签: pdf adobe pdf-generation

我正在尝试手动将一些文本添加到pdf文件中。我能够添加具有特定字体的新文本。但我无法设置字体颜色。那么我怎么能手动完成呢? (我只是想手动更改这些,因为我已经有了编写这些字节的代码来制作pdf文件) 另外,我如何使用pdf标准中指定的图形状态来操作文本,以便功能更改不会影响颜色变化等。我究竟可以使用图形状态?

来源pdf档案click here 修改后的pdf文件clcik here

1 个答案:

答案 0 :(得分:7)

PDF颜色运算符列在PDF规范ISO 32000-1:2008的表74中。

在您的情况下,您添加的内容流是

104 0 obj
<</Length 105 0 R>>stream
  /Helv 8 Tf
  BT
  1 0 0 1 15.67 150 Tm
  (l)Tj
  ET
  /Helv 8 Tf
  BT
  1 0 0 1 17.88 190 Tm
  (abcdefghijklmnopqr)Tj
  ET
endstream
endobj 

如果是如果希望在RGB颜色空间中用红色填充书写,则添加1 0 0 rg

104 0 obj
<</Length 105 0 R>>stream
  BT
  1 0 0 1 15.67 150 Tm
  /Helv 8 Tf
  1 0 0 rg
  [...]

修改

如果您担心该更改可能会影响以后的文本,请记住使用图形状态堆栈运算符 q Q (参见{8.4}节{3}})。 E.g。

q
0 1 -1 0 595.22 0 cm
q
BT
1 0 0 1 36 540 Tm
/Xi0 12 Tf
0.75 g
(Hello people!)Tj
0 g
ET
Q
Q

(从PDF specification复制)