2016-08-27 15 views
0

.DOCの形式の文書には、英語とサンスクリット語(Devanagari)の単語が含まれています。私は、LibreOfficeのライターを使用しています:LibreOffice Writer:検索されたテキストのフォントを置き換える方法

Version: 5.1.4.2 
Build ID: 1:5.1.4-0ubuntu1 
Locale: en-US (en_GB.UTF-8) 

デフォルトのフォントは、私が好きで、継続して使用するLiberation Serif、ですが、サンスクリット語/ヒンディー語の一部が正しく表示されません。 Akshar Unicodeのように、Sanskrit/Devanagariの単語を正しく表示するフォントがあります。だから正しく表示されない言葉は、私は自分のフォントをAkshar Unicodeに変更し、個々の単語、間違った単語を強調表示して、Liberation SerifからAkshar Unicodeに変更します。これは退屈で非効率な方法です。

特定の単語のフォントを変更する効率的な方法はありますか?

  • ハイライト間違った単語やプレス:

    はここで、検索結果のフォントや置換テキストを変更することはできていないようですどちらも私がこれまで試した2つのメソッドですツールFind & Replaceを使用するには[CTRL] + [H]

  • Find & Replaceに似ていますが、より複雑なツールである拡張子Alternate searching 1.4.1をインストールします。

Find & Replaceツールは、検索結果や置換テキストのフォントを変更するのが理想的です。

答えて

0

次のマクロは、ドキュメント内の現在選択されている単語を選択します。次に、フォントを設定します。

Sub ChangeFontOfWords 
    document = ThisComponent.CurrentController.Frame 
    dispatcher = createUnoService("com.sun.star.frame.DispatchHelper") 
    oSels = ThisComponent.getCurrentSelection() 
    oSel = oSels.getByIndex(0) 

    dim args1(1) as new com.sun.star.beans.PropertyValue 
    args1(0).Name = "SearchItem.SearchString" 
    args1(0).Value = oSel.getText() 
    dispatcher.executeDispatch(document, ".uno:ExecuteSearch", "", 0, args1()) 

    dim args2(0) as new com.sun.star.beans.PropertyValue 
    args2(0).Name = "CharFontName.FamilyName" 
    args2(0).Value = "Akshar Unicode" 
    dispatcher.executeDispatch(document, ".uno:CharFontName", "", 0, args2()) 
End Sub 

これを使用するには、単語をダブルクリックして選択し、マクロを実行します。便宜上、Tools -> Customizeに行き、ホットキーまたはツールバーボタンを設定してマクロを実行してください。

関連する問題