🍀 Bitte helfen Sie mit, das LibreOffice Forum zu erhalten. 🍀

❤️ DANKE >> << DANKE ❤️

Unterstützen Sie noch heute unsere Spendenkampagne für 2026.
>> Das LibreOffice-Forum lebt von Ihnen – und von vielen Experten, die freiwillig und kostenlos ihr Wissen teilen.<<
Ihre Spende hilft, die Community offen, werbefrei (bei Registrierung) und lebendig zu halten. Vielen lieben Dank!
Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.

Writer: Text durch Bild ersetzen

Alles zur Programmierung im LibreOffice.
Antworten
martho
Beiträge: 11
Registriert: Mi 19. Dez 2012, 16:09

Writer: Text durch Bild ersetzen

Beitrag von martho » Do 19. Mai 2016, 18:23

Hallo,

ich versuche, per C++ in einem Writer-Doc einen Text wie "<mein Bild hier>" durch ein Bild auf der lokalen Platte (c:/meinbild.jpg) zu ersetzen. Die Textsuchroutine habe ich schon, ich kriege eine XTextRange. Nun versuche ich, das Bild zu erstellen:

Code: Alles auswählen

Reference<XComponentContext> xContext( ::cppu::bootstrap() );
rOfficeServiceManager = Reference<XMultiServiceFactory> (xContext->getServiceManager(), UNO_QUERY);
...
Reference<XPropertySet> xGraphic(rOfficeServiceManager->createInstance(OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.text.TextGraphicObject"))), UNO_QUERY);
Jedoch ist xGraphic immer leer. Wie mache ich es richtig? Wie ersetze ich nachher die XTextRange durch mein jpg?

Grüße

martho
Beiträge: 11
Registriert: Mi 19. Dez 2012, 16:09

Re: Writer: Text durch Bild ersetzen

Beitrag von martho » Fr 20. Mai 2016, 11:07

Okay, man muß createInstance of dem Dokument aufrufen:

Code: Alles auswählen

Reference<XMultiServiceFactory> xFactory(rDoc, UNO_QUERY);
Reference<XPropertySet> xGraphic(xFactory->createInstance(OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.text.TextGraphicObject"))), UNO_QUERY);
Grüße


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten