Firefox에서 TTF 글꼴의 합자 (tt, ti, fi, ff 등)를 수정하려면 어떻게해야합니까?


24

특정 Windows 글꼴의 경우 합자 커닝이 뒤집히고 두 글자가 굵게 표시되는 표시 문제가 있습니다. 다음은 Firefox에서 Helvetica를 사용하는 이메일의 스크린 샷입니다.

여기에 이미지 설명을 입력하십시오

보시다시피, 교차 문자 ( tf)가 서로 연결 되는 방식 및와 같은 문자에 관한 것 같습니다 i.

나는이 문제를 매우 오랫동안 (여러 시스템에 걸쳐) 가지고 있었고 비슷한 문제가 발생하여 그 문제를 해결할 방법이 있는지 궁금해했습니다.

참고 : 이것이 Firefox에만 영향을 미친다고 생각합니다. Chrome과 LibreOffice는 모두 괜찮습니다.

답변:


27

Libre Office를 포함한 모든 응용 프로그램에서 작동하는 다른 솔루션은 aldeby에서 제공합니다 .

파일을 편집하거나 작성하고 ~/.fonts.conf다음 코드를 붙여 넣으십시오.

<match target="font" >
<edit name="embeddedbitmap" mode="assign">
<bool>false</bool>
</edit>
</match>

XML 구조를 유지하십시오.

로그 아웃했다가 다시 로그인하면 Calibri (및 다른 글꼴)가 훨씬 나아 보입니다 (못생긴 비트 맵 대체가 완전히 비활성화되어 있기 때문에 여기에 제공된 다른 답변보다 훨씬 더 좋습니다).


3
이것은 글로벌 픽스이기 때문에 이전 솔루션보다 더 나은 솔루션이며 합자를 제거하는 것이 중요합니다. 합자는 텍스트를보다 즐겁게 읽을 수 있도록하기 위해 구성 문제를 해결하기 위해 텍스트를 끄는 것이 이상적이지 않습니다.
scruss

약간 OCD 항문 보유하는 충분한 사람은 약 적절하게 (물론 당신이 리눅스 사람들이 것이 XML 파일의 내용을 서식 걱정하는 결코 : 그런 것들에 대해 걱정하지 ;-))<?xml version="1.0"?><!DOCTYPE fontconfig SYSTEM "fonts.dtd"><fontconfig><match target="font"><edit name="embeddedbitmap" mode="assign"><bool>false</bool></edit></match></fontconfig>
아담 Plocher

aldeby로 연결이 피싱 사기 사이트로
연결됨

1
@charsi 덕분에 웹 아카이브 링크로 대체했습니다.
Calimo

로그 아웃했다가 다시 로그인 할 필요조차 없었습니다. Firefox에서 페이지를 새로 고치고 응용 프로그램 (LibreOffice)을 다시 시작하면 충분합니다.
Marc.2377

9

합자를 비활성화하는 것 ( Calimo의 fonts.conf답변 참조 ) 은 잘못된 방향입니다! Calibri 와 같은 글꼴에서 과도하게 앨리어싱 된 "굵은"합자를 제거 할 수도 있지만 타이포그래피의 아름다움도 일부 제거합니다. 차이점을 알 수 없을 때까지 글꼴을 축소하는 것과 비슷합니다.

Calibri 글꼴을 제거하고 " Calibri와 메트릭 호환 "인 Carlito를 설치 하고 "fontconfig (local.conf)에 대한 매핑 항목"과 함께 패키지되어 글꼴 캐시를 새로 고침 하여 시스템에서이 문제를 해결했습니다 .

$ rm ~/.fonts/microsoft/CALIBRI*
$ sudo apt install fonts-crosextra-carlito
$ fc-cache

그런 다음 Carlito가 Calibri를 나타내는 지 확인할 수 있습니다.

$ fc-match Calibri
Carlito-Regular.ttf: "Carlito" "Regular"

이 방법으로 문제가 해결되지 않으면 sudo rm /usr/share/fonts/truetype/msttcorefonts/calibri*사례와 정확한 위치가 다를 수 있습니다.

Microsoft의 Calibri를 제거하기 전에 Calibri를 사용한 테스트 문서를 LibreOffice에 저장하고 스크린 샷을 찍었습니다. 그런 다음 LibreOffice를 종료하고 다시 연 다음 테스트 문서를로드했습니다. "Calibri"글꼴 이름이 이탤릭체로 대체되어 나타납니다. 이 대체 버전의 스크린 샷을 찍어 원본 아래에 붙여 넣었습니다.

칼리 브리 테스트

위의 텍스트는 fontconfig와 일치하는 Carlito 위의 Microsoft Calibri와 함께 13pt Calibri의 스크린 샷입니다. LibreOffice 5.0.5.1에서 렌더링 한 것처럼 굵은 글꼴, "페어 커닝"이 활성화되어 있지 않습니다.

Carlito는 Calibri와 매우 가까우며 합자가 올바르게 렌더링되며 전체적으로 훨씬 더 아름답습니다.

당신과 같은 작업을 수행 할 수 있습니다 Caladea 에 대한 브리아fonts-crosextra-caladea당신은 구글의 사용할 수 있습니다 Croscore 글꼴 Arimo, 티노스와의 cousine에 대한 굴림 , 굴림 , 및 택배 새로운 기능 과 함께 fonts-croscore. 데비안의 Calibri 및 Cambria 글꼴 대체 위키 에서 자세히 알아보십시오 .

그러나 Helvetica는 어떻습니까?

이 질문 은 Apple이 선호하는 sans-serif 글꼴 인 Helvetica 글꼴 에 대해 묻습니다 . 마이크로 소프트는 선호 굴림 은 돋움으로 변경하기 전에. 기본 Linux 매핑은 배포판에 따라 다르지만 일반적으로 Nimbus Sans L 또는 Liberation Sans입니다 .

$ fc-match Helvetica
n019003l.pfb: "Nimbus Sans L" "Regular"

그것을 실행하고 Arial을 얻는다면, 위에서 설명한 합자 문제가 발생하는 꽤 좋은 이유입니다. – Arial은 훌륭한 글꼴이 아닙니다.

Helvetica는 주변 문화가 풍부하여 Helvetica와 완전히 호환되는 글꼴을 찾을 수 없습니다. Arial (및 Liberation Sans와 포크 Arimo를 포함하여 Arial과 미터법으로 호환되는 글꼴 은 문자 너비가 동일합니다 (즉, "주로"미터법 호환 됨, 텍스트는 Helvetica와 같은 방식으로 줄 바꿈 됨)). Liberation Sans와 Nimbus Sans 는 가장 유사한 미학을 가진 것으로 보입니다 .

[ 1 ] [ 2 ] 뒤에 큰 돈을 쓰는 새로운 글꼴 인 IBM Plex 도 있습니다 . Plex는 모든 IBM 자료에서 Helvetica (세리프 및 모노 스페이스 글꼴뿐만 아니라 압축 된 산도 포함)를 대체하도록 설계되었지만 Helvetica 또는 기타 글꼴과는 완전히 호환되지 않습니다. Font Squirrel은 Plex 글꼴 샘플을 잘 보여 줍니다.

Fontconfig 별명

Helvetica를 다른 글꼴로 수동으로 별칭 지정하려면 (따라서 Calibri 및 / 또는 Arial을 제거 할 필요는 없지만 수동으로 별칭을 지정해야 함) ~/.config/fontconfig/fonts.conf파일을 편집하십시오 (이전 시스템의 경우 ~/.fonts.conf혼동을 피하기 위해 후자를 symlink합니다). 이 답변에 언급 된대로 <alias>Helvetica에 대한 새 섹션을 추가하십시오 (이 섹션은 Arimo를 사용합니다. 설치되어 있는지 확인하십시오).

<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>

  <alias>
    <family>Helvetica</family>
    <prefer><family>Arimo</family></prefer>
  </alias>

</fontconfig>

1
이것은 허용되는 것보다 훨씬 더 나은 대답입니다. 편리한 conf의 파일이 아치 위키로 볼 수 있습니다에서 나는 점에 원하는 : wiki.archlinux.org/index.php/Croscore_Fonts
Xananax

첫 번째 줄은 이제 sudo rm -R / usr / share / fonts / truetype / calibri 여야합니다
dez93_2000

리눅스에서 fc-match Helvetica 결과가 arial이라면 Liberation Sans를 강제하는 방법을 알고 있습니까? Arial을 삭제 하시겠습니까? 감사합니다
dez93_2000

@ dez93_2000 – 아마 그렇습니다 /usr/share/fonts/truetype/msttcorefonts/callibri*. 주석에 맞지 않기 때문에 글꼴 별칭을 해결하기 위해 답변을 업데이트 할 것입니다.
아담 카츠

허용 된 답변의 렌더링 결과 (Calibri 글꼴 사용)를주의 깊게 검사했으며 알려진 올바른 렌더러와 비교하여 전혀 차이가 없음을 발견했습니다. 빠진 아름다움은 없었습니다.
Marc.2377

6

lgarzo의 답변 은 텍스트에 "noligs"클래스가있는 웹 사이트 에서만 작동 합니다 (대부분의 웹 사이트는 그렇지 않습니다).

모든 웹 사이트에서 합자를 전체적으로 비활성화하려면 다음 줄을에 추가하십시오 userChrome.css.

* { -moz-font-feature-settings: "liga" 0; }

이 작업을 수행하는 가장 쉬운 방법은 함께 새로운 스타일을 만드는 것입니다 세련된 확장.


스타일 제안에 +1 AFAIR 저는 모질라 문서를 인용했습니다 (OP가 원하는대로 변환 할 수 있기를 기대했기 때문에) : 내 의도는 규칙을 페이지의 CSS에 포함시키는 것이 었습니다. (하지만 소스를 확인할 수는 없습니다. ATM이 다운 된 것 같습니다.)
lgarzo

1
이 구문은 stackoverflow.com/a/15161336/4464570 에 따르면 Firefox 14까지만 유효 했으며 이제 더 이상 브라우저에서 인식하지 않습니다. 현재 구문으로 업데이트하도록 게시물을 편집했습니다.
바이트 사령관

4

이미지를 보면서 몇 가지 언급이 떠 올랐습니다.

  • 합자가있는 것 같습니다 앤티 앨리어싱 된 나머지 텍스트는 그렇지 않습니다. 따라서 일반 텍스트보다 더 뚱뚱해 보입니다 (거부 할 수는 없지만 거부 할 수는 있음).
  • AFAIK the Helvetica 글꼴은 비표준 글꼴입니다 . 즉 기본 Windows 설치와 함께 제공되지 않습니다. 설치 했습니까 아니면 다른 글꼴입니까?

문제는 합자 / 커닝을 올바르게 지원하지 않는 글꼴을 기반으로한다고 생각합니다.

아래 CSS 규칙을 사용하여 FF에서 합자를 비활성화 할 수 있습니다.

/* disable common ligatures, usually on by default */
.noligs { -moz-font-feature-settings: "liga" 0; }

출처 : CSS 참조 : Mozilla Extensions


이 구문은 stackoverflow.com/a/15161336/4464570 에 따르면 Firefox 14까지만 유효 했으며 이제 더 이상 브라우저에서 인식하지 않습니다. 현재 구문으로 업데이트하도록 게시물을 편집했습니다.
바이트 사령관

1

Calilinux의 답변 외에도 Archlinux 사용자는 도움을 얻을 수 있습니다 https://wiki.archlinux.org/index.php/font_configuration- 비트 맵 글꼴 비활성화

로컬 구성 파일 ~ / .config / fontconfig / conf.d / 20-no-embedded.conf를 만들 것을 제안했지만 시스템 전체 옵션으로갔습니다.

sudo touch /etc/fonts/conf.d/20-no-embedded.conf
sudo chmod 777 /etc/fonts/conf.d/20-no-embedded.conf
nano 777 /etc/fonts/conf.d/20-no-embedded.conf

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <match target="font">
    <edit name="embeddedbitmap" mode="assign">
      <bool>false</bool>
    </edit>
  </match>
</fontconfig>

그런 다음 앱을 다시 시작하십시오 (제 경우에는 썬더 버드)


"<match target ="font ">"줄 바로 아래에 다음을 추가하십시오 : <test name = "family"> <string> Calibri </ string> </ test> 또는 글꼴 이름이 무엇이든 (Helvetica) 해당 특정 글꼴의 글꼴 설정 만 편집하십시오.
zeehio

파일에 심볼릭 링크가 아닌 파일을 넣으므로 권한은 777이 아니라 644 여야합니다.
Marc.2377
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.