Function Kursivtext_maskieren
ZKNMarkupTextFunc("CharPosture", com.sun.star.awt.FontSlant.ITALIC, "§&§")
End Function
Function ZKNMarkupTextFunc(SearchAttrName, SearchAttrValue, ReplaceStr)
REM Function gehoert zu Sub Kursivtext_maskieren
Dim oDoc as Object, oReplaceObj as Object
Dim SearchAttributes(0) As New com.sun.star.beans.PropertyValue
oDoc = ThisComponent
SearchAttributes(0).Name = SearchAttrName
SearchAttributes(0).Value = SearchAttrValue
oReplaceObj = oDoc.createReplaceDescriptor
oReplaceObj.SearchRegularExpression = true
oReplaceObj.searchStyles = false
oReplaceObj.searchAll = true
oReplaceObj.SetSearchAttributes(SearchAttributes)
oReplaceObj.SearchString = ".*"
oReplaceObj.ReplaceString = ReplaceStr
oDoc.replaceAll(oReplaceObj)
End Function
Hallo
Nach einem kurzen Test mit LO und AOO funktioniert der Code bei direkt formatierten Textstellen, nicht jedoch bei entsprechenden Zeichen-/Absatzvorlagen -- aber das war auch bisher der Fall.
Karolus
LO7.4.7.2debian 12(bookworm) auf Raspberry5 8GB (ARM64) LO25.2.3.2 flatpakdebian 12(bookworm) auf Raspberry5 8GB (ARM64)
vielen Dank, dass du dir die Zeit für einen kurzen Test genommen hast. Bei den Kursiv-Stellen In meinem Ausgangsmaterial (ca. 20 Seiten) handelt es sich um direkt formatierten Text, bisher hat der Code ja auch prima funktioniert.
Ich werde es gleich mal mit kleinen Beispieltexten versuchen, vielleicht kann ich das Problem eingrenzen.
es funktioniert immer noch nicht. Wenn ich eine Datei mit dem Text "Dies ist ein Test." anlege und darüber dann das im Ausgangsposting gegebene Makro laufen lasse, erhalte ich als Ergebnis "Dies ist §ein Test.§". Es wird also nicht – wie gewünscht – ausschließlich das Wort "ein" maskiert.
Ich überlege jetzt, wie ich einen SearchDescriptor konstruieren kann, der nach kursiv formatiertem Text sucht und diesen dann als TextCursor (oSuchErg) entsprechend bearbeitet. Hat jemand Hinweise dazu?
Rätselhaft ist mir allerdings immer noch, warum der ursprüngliche Code bis vor kurzem ohne Probleme funktioniert hat. Ist da bei der Umstellung auf ApacheOO etwas Grundlegendes geändert worden? Vielleicht weiß ja jemand was.