AW: Bild aus RTF-Text extrahieren
Dem wmetafile8 typ in RTF fehlt der metafile header. Es wird daher mit SetWinMetaFileBits geladen.
Von WPTools (das Dir ja vorliegt) wird er als typ wpreadPictWMetafile geladen. Das passiert dann in TWPOCustomImage.LoadMetafileStream Ändere einfach mal den code if WMetafileType = 8 then lpmfp.mm := 8 else lpmfp.mm := 1; // was: WMetafileType; in if WMetafileType = 8 then lpmfp.mm := 1 else lpmfp.mm := 1; // was: WMetafileType; Das macht womöglich den entscheidenden Unterschied. Anscheinend wurde die Metadatei inkorrekterweise als Typ 8 eingebettet, anstatt Typ 1, den andere RTF Leser zeigen ja auch eine Miniatur an. |
AW: Bild aus RTF-Text extrahieren
Danke, aber leider bringt dies keinen Erfolg :-(
Ich denke da wird das uralte TX-Control (über 20 Jahre alt) wohl Mist machen beim Export als RTF. Und mit diesem RTF muss ich nun klar kommen... Ich habe den Inhalt des /Pict Datenabschnittes in eine Datei geschrieben, welche vom Microsoft Office Picture Manager problemlos gelesen und angezeigt wird. Ein Export dieser angezeigten Datei wieder als WMF ergibt absolut bytegleich die gleiche Datei, beginnend mit 01 00 09 00 00 03 DE 60 ... wobei ich die die ersten 4 Byte auch online in einigen Dukumentationen gefunden habe, kann also nicht so falsch sein? Ich wollte nun aus diesem WMF-File ein BMP-File erzeugen, um dieses dann in eine Textbox zu laden, aber
Delphi-Quellcode:
bekomme ich "Metadatei ist ungültig"var MetaFile : TMetaFile; begin MetaFile.LoadFromFile(FileWmf); Zitat:
Ciao Stefan |
AW: Bild aus RTF-Text extrahieren
Nachdem ich nur die Anzeige in WPTools sowie diverse Wordprozessor Programme kenne, weis ich nicht wie wie das eigentlich aussehen soll. Soll es skaliert sein, oder das kleine logo oben links oder ... ?
Den code zu abspeichern einer validen WMF incl. Header hab ich bereits oben gepostet. WPTools ergänzt ja den header. |
AW: Bild aus RTF-Text extrahieren
Die Bild kann unterschiedlich kodiert sein.
Code:
pict leitet das Bild ein.
{\pict\wmetafile8\picw5508\pich10399\picwgoal3120\pichgoal5895\picscalex77\picscaley77
Dann kommt das Bild-Format hier ist dann noch Bitmap oder PNG möglich. Die Steuerbefehle schau mal bitte in der Dokumentation zum Format nach.
Code:
Hinten hinter kann noch \bin angehängt sein, dann kommen Binärdaten ansonsten sind die Hex-kodiert.
{\pict\wmetafile8\picw5508\pich10399\picwgoal3120\pichgoal5895\picscalex77\picscaley77\bin
|
AW: Bild aus RTF-Text extrahieren
Zitat:
Die Größe der Bilder bekomme ich aus dem RTF aus "/picwgoal" und "/picscalex" bzw. "pichgoal" und "/picscaley" und kann damit das Bildchen wieder in der original gewünschten Größe einfügen. Allerdings macht mir das WPRichText da noch ein Problem beim Speichern und wieder Laden, dann sind die Bilder weg oder in der falschen Größe. Konvertiere ich aber esrt das WMF in BMP und lade dieses dann ins WPRichText, funktioniert das Speichern und wieder Laden wie gewünscht. Deswegen hatte ich erst an der Korrektheit der exportierten WMF's gezweifelt! Ciao Stefan |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:09 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz