사실 내 질문이 너무 기본적이라고 생각하지만, 인터넷에서 깊이 검색한 후에도 브라우저가 Linux 시스템에서 특정 스크립트를 렌더링하기 위해 특정 글꼴을 선택하는 방법을 여전히 이해하지 못합니다. 나는 리눅스 시스템이글꼴 구성애플리케이션에서 글꼴 렌더링을 관리하는 데 사용되지만, Fontconfig의 동작은 브라우저와 일치하지 않습니다. 주로,Chromium 및 그 파생물은 항상 글꼴 구성 규칙을 준수하지 않습니다.그들은 글꼴을 직접 선택하려고 합니다. 반면에,Firefox 및 그 파생 제품은 Linux 시스템과 잘 통합되어 있습니다.그리고 그들은 글꼴 구성 설정을 존중하는 경향이 있습니다. 나는 그들의 동작을 테스트하기 위해 다른 브라우저를 시도했고, 심지어 우리가 글꼴 구성에서 특정 글꼴에 대한 규칙을 구성하더라도 브라우저 간에 일관된 동작을 얻으려면 여전히 더 많은 조정이 필요하다는 것을 발견했습니다. 그들은 자신의 글꼴을 선택하는 경향이 있습니다. 이것은 나를 혼란스럽게 한다. 이에 대한 내 질문은 다음과 같습니다.
- 브라우저는 실제로 어떻게 글꼴을 글꼴로 선택합니까?사용자 인터페이스 글꼴또한특정 스크립트를 렌더링하는 데 사용되는 글꼴?
- CSS에서 글꼴을 지정할 수 있다는 것을 알고 있지만 지정하지 않으면 어떻게 되나요? 브라우저는 글꼴을 어떻게 대체합니까?
- 글꼴 구성은 브라우저에서 무엇을 합니까? 브라우저는 글꼴 우선순위를 지정하기 위해 Fontconfig 등을 사용합니까?
- 내가 뭐 놓친 거 없니?
혼란을 해결하도록 도와주세요. 어떤 도움이라도 대단히 감사하겠습니다.
답변1
오랫동안 Fontconfig와 브라우저 동작을 연구한 결과 다음 사항을 이해하게 되었습니다.
Fontconfig는 비교적 작지만 복잡한 소프트웨어입니다. 주어진 조건과 렌더링 매개변수에 가장 적합한 글꼴을 일치시키는 알고리즘이 있습니다. 이러한 조건과 매개변수를 총칭하여 "모드"라고 합니다.
글꼴에는 많은 특성이 있으며, 다양한 글꼴에도 몇 가지 공통된 특성이 있을 수 있습니다. 따라서 특정 모드에 대한 글꼴을 선택할 때 시스템의 모든 글꼴을 확인하여 관련성을 확인해야 합니다. 일부 글꼴에는 다른 글꼴을 압도하는 특정 특성이 있습니다. 예를 들어. 일부 글꼴에는 외국 스크립트/기호에 대한 유니코드 지원이 있을 수 있지만 그리기 품질이 좋지 않을 수 있습니다. 또한 일부 글꼴은 상대적으로 적은 수의 스크립트/기호에 대해 유니코드를 지원할 수 있지만 그리기 품질은 좋습니다. 이 경우,fontconfig는 주어진 문자 세트를 렌더링할 가능성이 더 높은 글꼴을 선호하려고 시도하며 실제로는 그리기 품질을 무시할 수 있습니다. 따라서 우리는 Fontconfig의 결과를 전혀 보장할 수 없습니다. 왜냐하면 그들은 글꼴 파일 자체에 더 의존하고 애플리케이션의 특정 요구 사항을 요구하기 때문입니다. 마지막으로, 사용자로서 우리는 특정 상황에 어떤 글꼴이 적합한지 항상 알고 있습니다. 그러나 Fontconfig는 이것을 모릅니다. 분명히 글꼴의 아름다움, 품질 및 오류를 이해할 방법이 없습니다. 단지 각 글꼴을 글꼴로 취급합니다.
브라우저 및 그래픽 디자인 제품군과 같은 일부 응용 프로그램은 원하는 경우 자체 그래픽 및 글꼴을 사용할 수도 있습니다. 이 경우에는 Fontconfig를 요청하거나 스스로 조치를 취할 수 있습니다.
다양한 시스템에서 Fontconfig의 우선 순위 동작을 재현할 수 있지만 이러한 시스템에는 정확히 동일한 버전의 글꼴 파일, 구성 파일 및 렌더링 프레임워크가 있어야 합니다. 그렇지 않고 업데이트된 측정항목이나 스크립트/언어 데이터가 있는 경우 일부 글꼴 파일이 다른 글꼴 파일보다 선호될 수 있습니다.
실패할 경우에 Fontconfig가 올바른 글꼴과 일치하도록 돕기 위해 홈 디렉토리에 자신만의 Fonts.conf 파일을 설정하는 것이 좋습니다.
자세한 내용은 여기를 참조하세요:https://www.freedesktop.org/software/fontconfig/fontconfig-user.html