Libre Office

Als PNG exportieren

WRITER hat alles, was Sie von einer modernen, voll ausgestatteten Textverarbeitung erwarten.
Antworten
bittelöschtmichnicht
Beiträge: 70
Registriert: Sa 3. Sep 2022, 12:18

Als PNG exportieren

Beitrag von bittelöschtmichnicht » So 3. Sep 2023, 09:54

Wie kann man in LibreOffice Writer Dokumente als PNG-Datei exportieren? Die interne Exportfunktion exportiert nur die erste Seite als PNG-Datei.

bittelöschtmichnicht
Beiträge: 70
Registriert: Sa 3. Sep 2022, 12:18

Re: Als PNG exportieren

Beitrag von bittelöschtmichnicht » So 3. Sep 2023, 10:15

alles klar gefunden

https://superuser.com/questions/1741308 ... -as-images
https://superuser.com/questions/1741443 ... riter-page

Extras => Makros bearbeiten => einfügen und auf den grünen Button drücken.

Code: Alles auswählen

Sub StoreEachPageToPNG()
Dim oDoc As Variant, oViewCursor As Variant
Dim iPageCount As Long, iPage As Long 
Dim sOriginalURL As String, sFileURL As String 
Dim pngFilterData(1) As New com.sun.star.beans.PropertyValue
    pngFilterData(0).Name = "PixelWidth"
    pngFilterData(0).Value = 1634 ' or as much as you need
    pngFilterData(1).Name = "PixelHeight"
    pngFilterData(1).Value = 2114 ' take care to maintain proportions
Dim Args(1) As New com.sun.star.beans.PropertyValue
    Args(0).Name = "FilterName"
    Args(0).Value = "writer_png_Export"
    Args(1).Name = "FilterData"
    Args(1).Value = pngFilterData
    
    oDoc = ThisComponent
    iPageCount = oDoc.getCurrentController().PageCount
    oViewCursor = oDoc.getCurrentController().getViewCursor()
    sOriginalURL = oDoc.getURL()
    oViewCursor.jumpToFirstPage()
    For iPage = 1 To iPageCount
        sFileURL = Replace(sOriginalURL, ".odt", " - " & Format(iPage, "000") & ".png")
        oDoc.StoreToURL(sFileURL, Args)
        If Not oViewCursor.jumpToNextPage() Then End
    Next iPage
End Sub

Open Office
Antworten