12

我从PDF Specification中提取了 PDF 规范中的最小 PDF 示例,将其复制到记事本,将文件重命名为具有扩展名.pdf

我可以用其他 PDF 查看器(PDF-XChange、SumatraPDF、MuPDF)打开它。但是当我用 Adob​​e Reader 打开它时,它说文件已损坏。

我不确定其他查看者是否将此“损坏”文件视为空白文件。

该文件应该显示一个空白页,因为它是一个最小的示例。

事实上,我修改了最小的例子。因为当我将它从 PDF 规范复制到记事本,并通过十六进制编辑器打开 .txt 文件时,我看到.txt文件中的新行给了我 2 个空间。例如,

1 0 obj
<< /Type /Catalog

给我(在十六进制编辑器中)

1 0 obj  << /Type /Catalog

这是(十六进制值)

31 20 30 20 6F 62 6A 0D 0A 3C 3C 20 2F 54 79 70
65 20 2F 43 61 74 61 6C 6F 67

j和之间的 2 个空格<0D 0A

因此,我不会在记事本中创建新行,并修改xref部分中的值。

下面是完整的代码。

你知道这个例子有什么问题吗?为什么 Adob​​e Reader 说它坏了?这是因为我在 中给出了错误的值xref吗?

%PDF-1.4 1 0 obj << /Type /Catalog /Outlines 2 0 R /Pages 3 0 R >> endobj 2 0 obj << /Type Outlines /Count 0 >> endobj 3 0 obj << /Type /Pages /Kids [4 0 R] /Count 1 >> endobj 4 0 obj << /Type /Page /Parent 3 0 R /MediaBox [0 0 612 792] /Contents 5 0 R /Resources << /ProcSet 6 0 R >> >> endobj 5 0 obj << /Length 35 >> stream … Page-marking operators … endstream endobj 6 0 obj [/PDF] endobj xref 0 7 0000000000 65535 f 0000000009 00000 n 0000000074 00000 n 0000000119 00000 n 0000000176 00000 n 0000000295 00000 n 0000000373 00000 n trailer << /Size 7 /Root 1 0 R >> startxref 395 %%EOF
4

1 回答 1

17
于 2012-09-30T16:55:26.940 回答