디렉토리의 모든 글꼴 거부(fontconfig를 사용하는 글꼴 제외)

디렉토리의 모든 글꼴 거부(fontconfig를 사용하는 글꼴 제외)

Fontconfig를 사용하는 소수의 언어를 제외하고 대부분의 다른 언어에 대해 Noto 글꼴을 비활성화하려고 합니다. 모두 비활성화하려면 rejectfont및 요소를 사용합니다 . glob그런 다음 요소를 사용 acceptfont하지만 활성화할 수 없습니다.

비슷한 문제가 있는 Fontconfig 메일링 리스트에 메시지가 있었지만 답변을 받지 못했습니다.https://lists.freedesktop.org/archives/fontconfig/2008-January/002826.html

내 구성 파일의 내용은 여기에 있습니다

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <selectfont>
    <rejectfont>
      <glob>/usr/share/fonts/truetype/noto/NotoSans*.ttf</glob>
      <glob>/usr/share/fonts/opentype/noto/NotoSans*.ttc</glob>
      <glob>/usr/share/fonts/opentype/noto/NotoSerif*.ttc</glob>
      <glob>/usr/share/fonts/truetype/noto/NotoSerif*.ttf</glob>
    </rejectfont>
  </selectfont>
  <selectfont>
    <acceptfont>
        <patelt name="family">
            <string>Noto Sans</string>
        </patelt>
    </acceptfont>
  </selectfont>
</fontconfig>

글꼴 관리자가 사용하는 각 계열에 대한 거부 글꼴 규칙을 작성하는 것 외에 이와 같은 쉬운 방법이 있습니까?

글꼴 삭제를 제안하지 마세요.

답변1

~/.config/fontconfig/fonts.conf모든 Noto 언어별 글꼴을 블랙리스트에 추가하는 다음 XML을 파일에 추가합니다 .

<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<selectfont>
    <rejectfont>
        <glob>/usr/share/fonts/truetype/noto/NotoKufi*</glob>
        <glob>/usr/share/fonts/truetype/noto/NotoNaskh*</glob>
        <glob>/usr/share/fonts/truetype/noto/NotoNastaliq*</glob>
        <glob>/usr/share/fonts/truetype/noto/NotoSans*</glob>
        <glob>/usr/share/fonts/truetype/noto/NotoSerif*</glob>
    </rejectfont>
    <acceptfont>
        <glob>/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf</glob>
        <glob>/usr/share/fonts/truetype/noto/NotoSans-Bold.ttf</glob>
        <glob>/usr/share/fonts/truetype/noto/NotoSans-BoldItalic.ttf</glob>
        <glob>/usr/share/fonts/truetype/noto/NotoSans-Italic.ttf</glob>
        <glob>/usr/share/fonts/truetype/noto/NotoSerif-Regular.ttf</glob>
        <glob>/usr/share/fonts/truetype/noto/NotoSerif-Bold.ttf</glob>
        <glob>/usr/share/fonts/truetype/noto/NotoSerif-BoldItalic.ttf</glob>
        <glob>/usr/share/fonts/truetype/noto/NotoSerif-Italic.ttf</glob>
        <glob>/usr/share/fonts/noto/NotoSans-*</glob>
        <glob>/usr/share/fonts/noto/NotoSerif-*</glob>
    </acceptfont>
</selectfont>

그리고 글꼴 캐시를 다시 빌드합니다 fc-cache -f -v.

이후에는 Writer에 나열된 Noto 글꼴 수가 수백 개에서 17개로 줄어듭니다.

관련 정보