Ubuntu 12.04
Ich möchte alle Bilder aus einem Dokument in LibreOffice Writer entfernen. Mein Dokument enthält ~ 350 Bilder. Gibt es eine Möglichkeit, sie massenhaft und nicht einzeln zu löschen ? Ich habe versucht, Extras> Optionen> LibreOffice Writer> Ansicht> Anzeige> "Grafiken und Objekte" zu deaktivieren. Aber die Platzhalter sind immer noch sichtbar.
Bearbeiten: Ich weiß, wie man die Seite als reine Textdatei speichert, aber ich muss sie in meinem Dokument formatieren.
libreoffice
Chella
quelle
quelle
Antworten:
Sie können auch ein kurzes Makro in LibreOffice verwenden, um alle Bilder in einem Dokument zu entfernen:
Dieses Beispiel kann auch geändert werden, um die Eigenschaften von Bildern zu ändern (z. B. alle einheitlich zu gestalten) sowie Formobjekte usw. zu behandeln.
Makros erstellen
LibreOffice bietet eine Basissprache sowie eine IDE zum Erstellen, Debuggen, Speichern und Ausführen von Code.
Verwenden Sie zum Öffnen des Makrodialogs Alt+ F11oder im Menü Extras > Makros > Makros organisieren > LibreOffice Basic
Code wird in Modulen platziert , die in Bibliotheken organisiert sind . Sie können Ihre eigenen erstellen, aber für die meisten Zwecke können Sie die integrierte MyMacros- Bibliothek und das integrierte Modul1 verwenden .
Wenn der Makrodialog geöffnet ist, markieren Sie Modul1 und drücken Sie Bearbeiten . Dies öffnet die IDE.
Code ist in Subs und Funktionen organisiert. In Anlehnung an VBA werden Funktionen verwendet, um einen Wert zurückzugeben, und Subs geben keinen Wert zurück. Sie können Ihre eigenen Subs und Funktionen überall unterhalb von Main definieren. Um diesen Code zum Entfernen von Bildern zu verwenden, fügen Sie ihn einfach in das Modul ein.
Makros verwenden
Sie können den Code direkt in der IDE ausführen, indem Sie auf eine beliebige Stelle im Sub klicken, die Sie ausführen möchten, und drücken F5. (Da Funktionen einen Wert zurückgeben, müssen sie von einem Sub aufgerufen werden.) Sie können den Code auch über die Dialogschaltflächen oder das Menü ausführen. Die IDE enthält einen integrierten Debugger, der beim Schreiben von neuem Code von entscheidender Bedeutung ist.
Wenn Sie das nächste Mal das Makrodialogfeld öffnen, wird das Sub als Makro aufgelistet und kann dann ausgeführt werden, ohne die IDE zu öffnen. Einzelne Makros können auch Menü- oder Symbolleistenelementen zugewiesen werden.
Hinweis: Dieses Makro wird auf jedem aktiven Dokument ausgeführt. Wenn Sie ein Makro über das Menü oder den Makrodialog ausführen, kann davon ausgegangen werden, dass dies das Dokument ist, in dem Sie gerade die Schaltfläche gedrückt haben. Wenn Sie jedoch die IDE zum Erstellen, Ausführen oder Debuggen von Code verwenden, stellen Sie sicher, dass Sie kein anderes Dokument zum aktiven Dokument gemacht haben.
LibreOffice Basic
LibreOffice Basic ist VBA sehr ähnlich, aber diese Ähnlichkeit kann auch täuschen, da das Objektmodell völlig anders ist und die Syntax auch viele Unterschiede aufweist.
Wenn Sie beispielsweise in VBA einen Verweis auf ein Bildobjekt haben, verfügt das Bildobjekt über eine Löschmethode. Hier haben oder erben Objekte nur sehr wenige Methoden. Um das Bildobjekt zu löschen, verwenden Sie das Dokumentelement mit einer Struktur und Syntax, die einem browserbasierten DOM sehr ähnlich ist.
Die LibreOffice-Hilfe enthält Links für den Einstieg in LibreOffice Basic.
quelle
Ich gehe davon aus, dass der Text des Dokuments formatiert ist und das Speichern nur als Text nicht ideal ist. In diesem Fall könnte man einen etwas längeren Ansatz wählen:
Erstellen Sie einen temporären Ordner.
Öffnen Sie das Dokument normal in LibreOffice.
Wählen Sie
Save As
und hierHTML Document (Writer) (.html)
als Format auswählen .Save as html
Stimmen Sie dem Format im nächsten Bildschirm zu und nicht dem Format.Schließen Sie LibreOffice.
Öffnen Sie den oben erstellten temporären Ordner. Sie sollten eine HTML-Datei und eine Reihe von Bildern sehen.
Öffnen Sie dann die
.html
Datei in einem geeigneten Texteditor, um die Tags zu entfernen, die andernfalls zu Lücken im Dokument führen würden.<IMG SRC="[^>]+>
beispielsweise den Suchausdruck verwendet und nichts im Feld "Ersetzen durch".Bearbeiten: Anstatt einen GUI-basierten Texteditor zu verwenden, kann man die Befehlszeile folgendermaßen verwenden , vorausgesetzt, einer befindet sich im entsprechenden Ordner und
cli.html
der Name wird beim Speichernhtml
in LibreOffice angegeben.Eine Sicherungsdatei
cli.html.bak
wird für alle Fälle erstellt ...quelle