Verändern Sie PDF - Text Neupositionierung
Gibt es eine Möglichkeit, shift /verschieben der text in vorhandene pdf-Datei Seite zu einer anderen position zu?
Wie es einige Texte im Bereich x=100, y=100, B=100, h=100, und ich möchte um es zu verschieben um x=50, y=200, B=100, h=100.
Ich habe viel recherchiert und es scheint iTextSharp
nicht tun. PDFSharp
behauptet, dass es getan werden kann, aber ich konnte keine Beispiele.
Ein Weg ist, um eine bitmap von bestimmten Gegend der text, den ich verschieben möchten, ziehen Sie weißes Rechteck über dem Gebiet und einfügen von bitmap-an der neuen Lage. Ich will nicht diese Lösung verwenden, da ich die Arbeit mit großen pdf-Dateien mit mehr als 1K Seiten, wo jede Seite muss verändert werden.
Was ich herausgefunden habe ist, dass ich brauche, um einen Weg zu finden, um text-Positionierung Operatoren (text-matrix und die text-Status-Parameter), die ist nicht so einfach.
Jemand irgendwelche Ideen?
Benutzer können wählen Sie Bereich (Rechteck) des Textes, den er will, sich zu verändern. Es ist für Einzel-pdf und alle seine Seiten.
InformationsquelleAutor HABJAN | 2012-02-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich denke, es kann getan werden, wenn alle PDF-Dateien sind einfache (nicht komplexe) kommen aus der gleichen Anwendung.
Wenn Sie benötigen dies für z.B. eine website, wo Benutzer Dateien hochladen können, die dann besser zu vergessen: du wirst nie eine Lösung, die funktioniert perfekt mit jedem PDF-Datei.
PDFsharp helfen kann - aber AFAIK PDFsharp macht nur die Hälfte von dem, was Sie brauchen. PDFsharp geben Sie die Blöcke, aus denen die PDF-Datei. Sie analysieren die Blöcke zu finden, die Zeichnung Anweisungen, überprüfen Sie die Positionen, und verschieben Sie Sie.
Einige Anwendungen gar nicht zeichnen Worte, so ein einfaches Wort wie "Hallo" könnten gezogen werden in 3 Blöcken (vielleicht ist "Er", "ll" und "o"). Sie müssen möglicherweise zu zahlen, die Aufmerksamkeit auf diese, vielleicht nicht, wenn alle Dateien stammen aus der gleichen Anwendung.
Ich denke, der hier gezeigte code zum extrahieren von text könnte hilfreich sein:
http://forum.pdfsharp.net/viewtopic.php?p=4010#p4010
Zu verlegen text, den Sie finden müssen, um es in den ersten Platz - eine Menge zusätzliche Arbeit, die noch gebraucht ...
InformationsquelleAutor Vive la déraison
Können Sie ein Objekt entfernen, mit Seite.Inhalt.Elemente.RemoveAt(8)
Überprüfen Sie das element zählen, indem Sie die überprüfung-Seite.Inhalt.Elemente.Graf.
können Sie den string-Wert jedes Elements zu tun (einige string-Validierung) Holen Sie die Daten wie unten.
InformationsquelleAutor Muthukumar J
Oder Sie können ziehen Sie ihn über, und erstellen Sie eine nur-lese-text-form am neuen Standort
InformationsquelleAutor mark stephens
Wenn eine kommerzielle Bibliothek statt PDFSharp ist eine option, die Sie könnten versuchen, Amyuni PDF Creator .Net oder Amyuni PDF Creator ActiveX. Die Methode IacDocument.GetObjectsInRectangle können Sie abrufen, alle die "Grafik-Objekte" von der angegebenen Rechteck, dann könnte man das hinzufügen von bestimmten Wert zu jedem
x
- und/odery
koordinieren, verschieben Sie diese Objekte auf der Seite. Aus der Dokumentation:Übliche disclaimer gilt.
InformationsquelleAutor yms