Registriert seit: 2. Apr 2004
Ort: Bonn
2.537 Beiträge
Delphi 11 Alexandria
|
AW: Quick PDF-Library: Wie die Position des Annotationfensters ermitteln?
11. Nov 2021, 17:40
Interessanterweise liefert bei mir die GetobjectToString gar nicht die Annotations zurück, sondern irgend einen anderen Kram. Vielversprechender ist dann wohl doch die ganze PDF Datei zu verwenden, da finde ich alle Objekte und kann meine Annotationen anhand der Position (relativ) sicher ermitteln.
Blöd nur, dass andere PDF-Programme anscheinend die PDF-Datei irgendwie komprimiert speichern, dann finde ich nichts, muss also erst die Datei öffnen, dann als (unkomprimierten) Stream speichern und den in eine Textdatei laden.
Na ja, werde ich gleich mal ausprobieren. Aber sieht so aus, als ob man so doch an einige zusätzliche Infos ran kommen könnte.
Edit: Funktioniert hervorrangend!. Ist zwar ein wenig Parser-Gefrickel (aber ich muss gestehen, ich liebe das), aber so kann ich beim Laden der Datei sicher den Zustand der Popups ermitteln. Und als Stream zu speichern, etc. brauch ich auch nicht, da ein einfaches qp.savetostring mir die Daten wie gewünscht liefert.
Nun muss ich mir nur noch überlegen, wie ich Änderungen des geöffnet-Status zurückschreibe. Wahrscheinlich indem ich bei Änderung des Status das Popup lösche und mit dem neuen Status wieder anlege. Umständlich, aber wenn es nicht anders geht...?
Denn eine Quick-PDF-Funktion habe ich nicht gefunden, womit man den Status des Popups ändern könnte.
Geändert von Harry Stahl (11. Nov 2021 um 20:10 Uhr)
|