groff -ms와 함께 다른 글꼴 모음을 사용할 수 없습니다.

groff -ms와 함께 다른 글꼴 모음을 사용할 수 없습니다.

groff매크로를 사용하여 msPostScript로 출력하고 있습니다. Linux에서는 유효하지 않습니다. 다른 글꼴과 출력 유니코드 문자를 원합니다. 내 글꼴을 다음으로 변환했습니다.이것질문. 명시된 대로 그것은 나에게 적합합니다( ms매크로 없이). 하지만 제목, 작성자 및 제목이 올바르게 표시되지 않습니다(중앙에 표시되지 않고 특별한 서식도 없음).

.ft linlibertine_rah
.TL
Title
.AU
Author
.NH
Heading
.PP
\[u1E6C]

출력 대상:

이 옵션을 사용하여 동일한 문서를 컴파일하면 -ms"Times" 글꼴이 있고 유니코드 기호는 없지만 형식은 올바른 문서를 얻게 됩니다.

여기에 이미지 설명을 입력하세요.

매뉴얼에 명시된 글꼴군은 groff_ms문자열을 사용하여 지정 .FAM하지만 결과는 를 사용한 것과 같습니다 .ft. 또한 콘솔에도 출력됩니다.

troff: test.ms:9: warning: can't find special character 'u0054_0323'

다음 과 같이 출력되므로 글꼴을 감지했을 것입니다 .ft samplefont.

troff: test.ms:1: warning: can't find font 'samplefont'
troff: test.ms:9: warning: can't find special character 'u0054_0323'

groff그래서 내 질문은: 매크로에서 다른 글꼴 모음을 어떻게 사용할 수 있습니까 ms?

답변1

문자열을 사용하여 글꼴 모음을 지정하려면 로마자, 볼드체, 이탤릭체 및 굵은 이탤릭체 접미사가 있는 일반 이름을 FAM사용해야 합니다 . R B I BI링크에서, 글꼴 모음은 이므로 , , 및 DejaVuSans글꼴을 제공해야 합니다 . 다음은 나에게 효과적이었습니다.DejaVuSansRDejaVuSansBDejaVuSansIDejaVuSansBI

mkdir -p /tmp/font/devps
cd  /tmp/font/devps
convert(){ 
  from=${1?} to=${2?}
  ttf2pt1 -a -e "$1" "$2"
  afmtodit "$2".afm textmap "$2"
}
convert /usr/share/fonts/dejavu/DejaVuSans.ttf DejaVuSansR
convert /usr/share/fonts/dejavu/DejaVuSans-Bold.ttf DejaVuSansB
convert /usr/share/fonts/dejavu/DejaVuSans-Oblique.ttf DejaVuSansI
convert /usr/share/fonts/dejavu/DejaVuSans-BoldOblique.ttf DejaVuSansBI
export GROFF_FONT_PATH=/tmp/font
groff -Tps -ms >text.ps <<\!
.ps 20
.vs 24
.ds FAM DejaVuSans
.TL
Title
.AU
Author
.NH
Heading
.PP
roman \[u1E6C]
.B "bold \[u1E6C]
.I "italic \[u1E6C]
.BI "bolditalic \[u1E6C]
!
gv text.ps

여기에 이미지 설명을 입력하세요.

관련 정보