2016-08-27 2 views
0

영어와 산스크리트어 (Devanagari)로 된 단어가 포함 된 .DOC 형식의 여러 문서가 있습니다. 나는 리브레 오피스 라이터를 사용하고 있습니다 :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으로 변경하여 지루하고 비효율적 인 방법으로 변경합니다.

특정 단어의 글꼴을 변경하는 효율적인 방법이 있습니까?

  • 강조 잘못된 단어를 눌러 :

    다음은 검색 결과의 글꼴이나 대체 텍스트를 변경할 수 있도록하지 않는 것 둘 다 내가 지금까지 해봤 두 가지 방법입니다 도구 Find & Replace을 사용하려면 [CTRL] + [H]

  • 과 유사하지만 더 복잡한 도구 인 확장자 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으로 이동하여 단축키 또는 도구 모음 버튼을 설정하여 매크로를 실행하십시오.

관련 문제