Verwenden von Powershell zum Entfernen von Inhalten aus PDF, während das PDF-Format beibehalten wird.Verwenden von Powershell zum Entfernen von Inhalten aus PDF
Meine Aufgabe: Ich habe versucht, was wäre eine einfache Aufgabe, wenn die Dokumente nicht im PDF-Format waren. Ich habe eine Reihe von PDFs, die unerwünschte Daten enthalten, bevor der Großteil der verwendbaren Daten beginnt. Dies ist alles, was in den Dokumenten vor "% PDF" steht. Ein Skript, das alle gewünschten Daten abruft und in eine neue Datei exportiert, wurde benötigt. Dieser Teil war super einfach.
Das Problem: Die Daten, die exportiert werden, scheint korrekt formatiert zu sein, außer dass es nicht mehr als PDF geöffnet wird. Ich kann es in Notepad ++ öffnen und es sieht identisch mit einem aus, das manuell sauber war und funktioniert. Betrachtet man den Rohcode des Powershell-geänderten PDFs, so scheint es, dass die "Zeilen" viel kürzer sind, als sie sein sollten.
Ich verstehe das PDF-Format verwendet nicht wirklich Linien, so dass möglicherweise wo das Problem erstellt wird. Entweder wenn die Daten anfänglich in ein Array eingegeben werden oder wenn es geschrieben wird, wird das PDF-Format wahrscheinlich unterbrochen. Gibt es eine Möglichkeit, das Format der PDF-Datei beizubehalten, während sie geändert und dann gespeichert wird? Es ist wahrscheinlich der Fall, dass ich etwas Einfaches vermisse.
"* Untersucht man den Rohcode des Powershell-PDFs, sieht es so aus, als wären die 'Zeilen' viel kürzer als sie sein sollten. *" - und was fehlt ihnen? – TessellatingHeckler
Soweit ich weiß, ist es Leerraum. Die Codierung wird beibehalten und alle Zeichen erscheinen gleich. Ich bin mir sicher, dass sich noch etwas geändert hat. – KVB
PDF-Dateistruktur enthält Verweise auf binäre Offsets relativ zum Start der Datei. Sie müssen sie also richtig analysieren [mit iTextSharp] (https://www.google.com/#q=itextsharp+pdf+read+write+) modify + stackoverflow + powershell) – wOxxOm