Seite 1 von 1
Absätze nach PDF Import - makro zum entfernen?
Verfasst: Do, 21.10.2010 14:39
von desputin
Hallo Ihr,
ich habe ein altes und sicherlich sehr gutes Problem, welches ich jetzt endlich angehen möchte:
Wenn ich passagen aus PDF Dokumenten per copy & Paste in Openoffice/LibreOffice einfüge, dann sind ja bekanntermaßen dort die harten Absätze drin, die nicht reingehören.
Hat jemand von Euch eventuell schon mal ein Makro geschrieben, mit welchem man diese Absätze intelligent entfernen kann (also so, daß "echte" Absätze nicht verloren gehen und auch nichts vom Text gelöscht wird) ?
Viele Grüße Christopher
Re: Absätze nach PDF Import - makro zum entfernen?
Verfasst: Do, 21.10.2010 15:03
von Eddy
Hallo christopherstark,
für welche Fragen, glaubst Du, ist das Unterforum "OOo Basic und Java" eingerichtet?
Mit Basic-grüßen
Eddy
Re: Absätze nach PDF Import - makro zum entfernen?
Verfasst: Do, 21.10.2010 15:34
von desputin
hm, hab ich nicht gesehen. Wie kann ich diesen Beitrag denn löschen? Hab ich nicht gefunden
Re: Absätze nach PDF Import - makro zum entfernen?
Verfasst: Do, 21.10.2010 18:16
von Constructus
Hallo Christopher,
zu spät... Das Verschieben kannst Du hier nur als Admin. Und löschen kannst Du nur Deine eigenen Beiträge. Kopiere Deinen ersten Beitrag ins andere Forum und frag da neu. Werjetzt Admin- Rechte hat, kann ich nicht erkennen.
Nette Grüße
Constructus
Re: Absätze nach PDF Import - makro zum entfernen?
Verfasst: Fr, 22.10.2010 15:09
von manese
Hallo Christopher,
ein Makro, dass „ahnt“, wo ein echter Absatz ist und wo nur die Zeile zu Ende war, lässt sich zur Zeit wahrscheinlich noch nicht finden. Ich kann dir aber zwei Zwischenlösungen anbieten.
Bei der ersten Lösung werden alle Zeilenumbrüche durch Leerzeichen ersetzt, aber doppelte Zeilenumbrüche bleiben als einfacher Zeilenumbruch erhalten. Dieses Makro setze ich gerne bei der Übernahme vom eMails ein. Du müsstest nur gegebenenfalls die echten Zeilenumbrüche vor der Anwendung durch doppelte Zeilenumbrüche markieren.
Code: Alles auswählen
sub PDFzuOpenOffice
Dim oDoc as object
oDoc = ThisComponent
''''Die Suche- und Ersetze-Funktion aktivieren
Dim oSuche as object
oSuche = oDoc.createReplaceDescriptor()
''''Einen Dummy (§§§) für echte Absätze generieren
With oSuche
.setSearchString("^$")
.setReplaceString("§§§")
.searchRegularExpression = True
End With
oDoc.replaceAll(oSuche)
''''Absatzenden durch Leerzeichen ersetzen
With oSuche
.setSearchString("$")
.setReplaceString(" ")
.searchRegularExpression = True
End With
oDoc.replaceAll(oSuche)
''''Dummys durch Zeilenumbrüche ersetzen
With oSuche
.setSearchString("§§§")
.setReplaceString("\n")
.searchRegularExpression = True
End With
oDoc.replaceAll(oSuche)
end sub
Bei der zweiten Lösung legst du dir das Makro auf eine Tastenkombination. Es bewirkt, dass zwei irrtümlich getrennte Absätze wieder zusammengeführt werden.
Code: Alles auswählen
Sub KolongrenzeAufheben
Dim oDoc as Object : oDoc = ThisComponent
Dim oViewC as Object : oViewC = oDoc.getCurrentController().getViewCursor()
Dim oTextC as Object : oTextC = oDoc.Text.createTextCursorByRange(oViewC)
oTextC.goToEndOfParagraph(False) : oTextC.goRight(1, True)
oTextC.setString(" ", True)
End Sub
Alles Gute
matthias