麻烦制作我的第一个PDF

时间:2015-04-14 00:33:26

标签: pdf

过去几个小时我一直在阅读PDF规范,这就是我想出来的。但它没有在OSX预览中渲染:

%PDF-1.3

1 0 obj
<< /Type /Catalog /Pages 2 0 R >>
endobj

2 0 obj
<< /Type /Pages /Kids [ 3 0 R ] /Count 1>>
endobj

3 0 obj
<< /Type /Page /Parent 2 0 R /Resources <<>> /MediaBox [0 0 500 500] /Contents 4 0 R >>
endobj

4 0 obj
BT
/F13 12 Tf (Hello World!) Tj 
ET
endobj

xref
0 5 
0000000000 65535 f
0000000010 00000 n
0000000059 00000 n
0000000119 00000 n
0000000221 00000 n

trailer 
<< /Size 5 /Root 1 0 R >>
startxref
267
%%EOF

我确定这是我的文本对象,但我无法搞清楚。

1 个答案:

答案 0 :(得分:2)

经过一些修正,以下内容在xpdf 3.0上呈现给我

%PDF-1.3

1 0 obj
<< /Type /Catalog /Pages 2 0 R >>
endobj

2 0 obj
<< /Type /Pages /Kids [ 3 0 R ] /Count 1>>
endobj

3 0 obj
<< /Type /Page /Parent 2 0 R /Resources << /Font << /F13 5 0 R >> /MediaBox [0 0 500 500] >> /Contents 4 0 R >>
endobj

4 0 obj
<< /Length 46 >>
stream
BT
/F13 12 Tf 100 250 Td (Hello World!) Tj
ET
endstream
endobj

5 0 obj
<< /BaseFont /Helvetica /Encoding /MacRomanEncoding /Name /F13 /Subtype /Type1 /Type /Font >>
endobj

xref
0 6
0000000000 65535 f 
0000000010 00000 n 
0000000060 00000 n 
0000000119 00000 n 
0000000247 00000 n 
0000000343 00000 n 

trailer
<< /Size 6 /Root 1 0 R >>
startxref
453
%%EOF

事情,我需要改变:

  • 5 0 R
  • 添加了字体对象/F13
  • 为内容流添加了100 250 Td。需要设置当前位置
  • 更正了4 0 R的格式。请注意<< /Length 46 >>streamendstream标记。
  • xref的更正。特别是第一行0000000000 65535 f是一个虚拟自由对象。第一个真实对象显示为第二个条目。