Generieren von PDF-Beispielen im Nur-Text-Quellcode, die in einer Dokumentanzeige funktionieren
Ich habe gerade die Post gefundenAdobe Forums: Einfaches Beispiel für eine Textzeichenfolge in der Spezifikation ist fehlerhaft.Ich war also daran interessiert, Beispiele für PDF-Quellcodes im Klartext zu finden.
Durch diesen Beitrag fand ich schließlich:
Die WebseitePDF-Referenz und Adobe-Erweiterungen zur PDF-Spezifikation | Adobe Developer Connection ; was beinhaltet:Das PDFDokumentenverwaltung - Portable Document Format - Teil 1: PDF 1.7, Erste Ausgabe (PDF32000_2008.pdf)Die PDF 1.7-Spezifikation enthält im Anhang "_Anhang H (informativ) Beispiel-PDF-Dateien" auf Seite 699; und von dort wollte ich "H.3 Simple Text String Example" (die "klassische Hello World") ausprobieren.
Also habe ich versucht, dies als zu speichernhello.pdf
(_Ausgenommen Hinweis: Wenn Sie aus der PDF32000_2008.pdf kopieren, erhalten Sie möglicherweise "%PDF-1. 4
"- das heißt, ein Leerzeichen nach1.
, die entfernt werden müssen_):
%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
/Font << /F1 7 0 R >>
>>
>>
endobj
5 0 obj
<< /Length 73 >>
stream
BT
/F1 24 Tf
100 100 Td
( Hello World ) Tj
ET
endstream
endobj
... und ich versuche es zu öffnen:
evince hello.pdf
... evince kann es jedoch nicht öffnen: "Dokument kann nicht geöffnet werden / PDF-Dokument ist beschädigt"; und auch:
Error: PDF file is damaged - attempting to reconstruct xref table...
Error: Couldn't find trailer dictionary
Error: Couldn't read xref table
Ich überprüfe auch mitqpdf
:
$ qpdf --check hello.pdf
WARNING: hello.pdf: file is damaged
WARNING: hello.pdf: can't find startxref
WARNING: hello.pdf: Attempting to reconstruct cross-reference table
hello.pdf: unable to find trailer dictionary while recovering damaged file
Wo gehe ich damit falsch?
Vielen Dank im Voraus für alle Antworten,
Prost!