Ich muss in der Lage sein, einen rechteckigen Bereich auf einer PDF-Seite anzugeben und den Text- und Grafikinhalt dieses Bereichs mit PDFBox an einen neuen Ort auf derselben Seite zu verschieben. Alle Grafiken (Linien, Bilder usw.) bewegen sich jeweils als eine ganze Einheit, wenn sie in dem Bereich ausgewählt sind.PDF-Inhalt mit PDFBox verschieben
Die zu ändernden PDF-Dokumente stammen als textbasierte PCL und werden mit einem Drittanbieter-Tool in PDF konvertiert. Ich kann technische Fragen zu diesen Dokumenten bei Bedarf beantworten.
This Stack Overflow question ist genau das, was ich bin, aber diese Frage scheint aufgegeben worden zu sein, bevor eine funktionierende Lösung gefunden wurde?
Ich würde diese Frage bounty wenn ich ein paar mehr Rufpunkte hätte.
Wenn Sie bei irgendeinem Aspekt dieses Problems helfen können, würde ich Ihre Hilfe danken, danke.
Der Grund, warum * diese Frage scheinbar vor einer funktionierenden Lösung * aufgegeben wurde, ist, dass Ihre Aufgabe höchst nicht trivial zu implementieren ist. Jede Zeichnungsanweisung in einer PDF-Datei kann auf ein Rechteck innerhalb oder außerhalb des Rechtecks oder teilweise innerhalb und teilweise außerhalb ausgerichtet sein. Daher müssen Sie möglicherweise für jeden Befehl die Koordinaten ändern, den aktuellen Clip-Pfad usw. bearbeiten (was möglicherweise kompliziert genug ist); oder Sie müssen vielleicht sogar die Anweisungen für Teile innerhalb und Teile außerhalb teilen. Zum Zeichnen einer Linie ist das möglich, aber zum Zeichnen eines Buchstabens? – mkl
Sie scheinen nicht die Komplikation des Teilens der Anweisung zu erfordern, aber bereits das bloße Bewegen kann zur Hölle kompliziert sein. – mkl
Wir verschieben nur komplette Text- oder Grafikeinheiten. Es scheint, als müssten wir einfach die Koordinaten anpassen, die mit einem Text oder Grafikelement verknüpft sind. Es gibt zahlreiche Beispiele in der PDFBox-Quelle zum Ändern von Dokumenten und eine Demo zum Lokalisieren von Text innerhalb eines bestimmten Rechtecks. Wir sollten in der Lage sein, die Textelemente in einem Rechteck zu lokalisieren und ihre Koordinaten zu aktualisieren. Ich würde sogar eine Antwort auf diese Frage akzeptieren, die sich nur mit Text befasste und die Grafik als ein separates Problem für uns übrigließ. – DavesPlanet