Absätze nach PDF Import - makro zum entfernen?

Das Textverarbeitungsprogramm

Moderator: Moderatoren

desputin
***
Beiträge: 73
Registriert: Fr, 08.08.2008 12:35

Absätze nach PDF Import - makro zum entfernen?

Beitrag 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
Eddy
********
Beiträge: 2781
Registriert: So, 02.10.2005 10:14

Re: Absätze nach PDF Import - makro zum entfernen?

Beitrag von Eddy »

Hallo christopherstark,

für welche Fragen, glaubst Du, ist das Unterforum "OOo Basic und Java" eingerichtet?

Mit Basic-grüßen

Eddy
desputin
***
Beiträge: 73
Registriert: Fr, 08.08.2008 12:35

Re: Absätze nach PDF Import - makro zum entfernen?

Beitrag von desputin »

hm, hab ich nicht gesehen. Wie kann ich diesen Beitrag denn löschen? Hab ich nicht gefunden
Benutzeravatar
Constructus
*******
Beiträge: 1610
Registriert: Mo, 21.01.2008 18:08
Wohnort: 20 Jahre Brilon - 40 Jahre Essen- Steele

Re: Absätze nach PDF Import - makro zum entfernen?

Beitrag 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
EDV ist wunderbar - o Wunder, wenn sie funktioniert! {°L*}

Freie Offices auf div. Linuxen + 3 VBoxen mit WIN2K
|| LibO + AOO, auf Linux und WIN2K; portable OO & Co. auf WIN
Genaue Typisierung unmöglich, alles ist "im Fluß"
manese
*****
Beiträge: 482
Registriert: Mo, 03.10.2005 17:20
Wohnort: Borgholzhausen
Kontaktdaten:

Re: Absätze nach PDF Import - makro zum entfernen?

Beitrag 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
Antworten