Metadaten bei \includepdf

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Metadaten bei \includepdf

von manuf » Do 24. Aug 2017, 19:55

Vielen Dank!

Für Leser mit ähnlichem Anliegen: Im MiKTEX Knowledge-Base-Eintrag zu pdfTeX 1.40.17 (und auch hier) finden sich die Bitmask-Details für \pdfsuppressptexinfo:
% 1 -> PTEX.Fullbanner
% 2 -> PTEX.FileName
% 4 -> PTEX.PageNumber
% 8 -> PTEX.InfoDict (/Producer /Creator /CreationDate /ModDate /Trapped)
So lassen sich u.a. gezielt der Originaldateiname (in obigem Beispiel: "./doc1.pdf") und eben auch die Angaben zu Autor und Titel (auch wenn in der %8-InfoDict-Zeile nicht explizit genannt) der inkludierten Datei aus dem Ziel-PDF fernhalten. - Prima!

(Hinweis, falls "Bitmask" Fremdwort ist: Man summiert einfach die Zahlen, deren zugehörige Infos nicht ins Ziel-PDF sollen. Also z.B. 1+4+8=13, falls alles außer dem Original-Dateinamen weg soll. Dann wird daraus: \pdfsuppressptexinfo=13)

Danke Ulrike!

von u_fischer » Do 24. Aug 2017, 18:43

Du kannst sowas versuchen:
\documentclass{article}
\usepackage{pdfpages}
\pdfinfo{
   /Title  (Document 2)
   /Author (Gretchen Morgan)
}
\begin{document}
 Page 1 \newpage
 \pdfsuppressptexinfo=-1
 \includepdf[pages={2}]{testmeta.pdf}
 
 \newpage Page 3

\end{document}

von manuf » Do 24. Aug 2017, 18:19

Danke für den Hinweis! Rechteprobleme sind auszuschließen; es handelt sich bei den "doc1"-Dokumenten um automatisch generierte Report-PDFs eines eigenen Systems. Nur ist dieses System (in anderen Zusammenhängen nützlich und notwendig) recht geschwätzig, was die Meta-Daten angeht. Das soll in diesem Fall gefiltert werden - und ich hatte gehofft, die includepdf-Stelle im tex-File wäre dafür geeignet. PDFtk, qpdf und andere scheinen die Originalangaben nicht wirklich aus der Datei zu entfernen - sie schreiben einfach neue (u.U. leere) Felder dazu und deklarieren sie als aktuell (siehe auch hier); anders ist es im PDF-Format wohl recht umständlich. MAT (Metadata Anonymisation Toolkit) wählt einen anderen Ansatz: Hier wird das PDF quasi virtuell gerendert und als neue Datei (mit NUR den neuen Metadaten) gespeichert. Im Prinzip wie einer der virtuellen PDF-Drucker. Werde dies nun also in meinen Prozess einzubauen versuchen ... :)

Den Thread lasse ich noch ca 24h offen, falls jemandem noch etwas einfällt, und setze ihn dann auf erledigt, weil es ja offenbar kein LaTeX-Problem mehr ist.

von Gast » Do 24. Aug 2017, 14:53

Darauf hat pdfpages keinen Einfluss. Das ist eine Angelegenheit von pdftex oder xetex oder luatex direkt.

Wenn du Metadaten von eingebundenen PDFs nicht haben willst, würde ich empfehlen, die zuvor zu entfernen bzw. durch Leerzeichen zu ersetzen. Dafür benötigt man nicht einmal Adobe Acrobat. Es sollte pdftk (habe ich nicht dahingehend untersucht, würde es aber einfach mal vermuten), sed oder ein Texteditor genügen. Allerdings kann das entfernen der Metadaten auch ein Verstoß gegen die Rechte des Urhebers oder anderer Rechteinhaber sein!

Metadaten bei \includepdf

von manuf » Do 24. Aug 2017, 13:21

Hallo zusammen,

mein Problem: Die Metadaten der PDF-Datei, aus der ich per \includepdf Seiten entnehme und in ein anderes Dokument einsetze, sind im Zieldokument sichtbar. Das ist nicht schön. -- Beispiel: Eine PDF-Datei (doc1) mit Metadaten erzeugt durch:
\documentclass{article}
\pdfinfo{
	/Title  (Document 1)
	/Author (John Abruzzi)
}
\begin{document}
 Seite 1 \newpage Seite 2 \newpage Seite 3
\end{document}
Der genaue Inhalt ist nicht relevant; es kommt halt eine PDF-Datei heraus, die in den Metadaten den Titel "Document 1" und den Autor enthält, was von wohl allen PDF-Viewern auch angezeigt wird. Nun binde ich eine Seite dieses PDFs in mein eigentliches "Problemdokument" (doc2) ein:
\documentclass{article}
\usepackage{pdfpages}
\pdfinfo{
	/Title  (Document 2)
	/Author (Gretchen Morgan)
}
\begin{document}
 Page 1 \newpage
 \includepdf[pages={2}]{doc1.pdf}
 \newpage Page 3
\end{document}
Das resultierende PDF enthält in seinen Metadaten den korrekten Titel "Document 2" und den richtigen Autor. ABER: Schaut man sich den binär-Inhalt der doc2.pdf an, sieht man, dass dort die Zeichenketten "Document 1" und "John Abruzzi" aus den Metadaten von doc1 herumliegen. Für ein normales Angucken im PDF-Viewer ist das natürlich egal, aber eine dumme Volltextsuche könnte "John Abruzzi" in doc2.pdf finden, was in diesem Fall nicht gewünscht ist. -- Im konkreten Fall ist das doc1 eine externe Datei, in der man natürlich vor dem Includen z.B. mit Adobe Acrobat die Metadaten verändern bzw löschen könnte, was jedoch in einem immer wiederkehrenden Arbeitsablauf stört.

Ich kann nachvollziehen, dass ein korrektes Reinbasteln von Seiten aus dem einen PDF (doc1) in ein anderes (doc2) einige Metadaten benötigt (Fonts etc). Die erwähnten Textfelder (Titel, Autor, etc) gehören jedoch sicher nicht dazu. Wie also kann ich \includepdf anweisen, diese Metadaten beim Inkludieren nicht sinnlos mit rüberzunehmen?

pdfTeX, Version 3.14159265-2.6-1.40.16 (MiKTeX 2.9 64-bit)
pdfpages 0.5d 2015-09-22 22:01:40


Vielen Dank,
Manuel.

Nach oben