troff 폰트 파일 형식
용도
troff 명령에 대한 설명 파일을 지정합니다.
설명
troff 명령이 지원하고 시스템에서 사용 가능한 각 사진 식자기에 대해 사진 식자기 및 해당 글꼴을 설명하는 파일을 포함하는 디렉토리가 있습니다. 이 디렉토리의 이름은 /usr/lib/font/devName입니다. 여기서 Name 변수는 사진 식자기의 이름을 지정합니다.
troff 명령 소스 디렉토리 내의 /usr/lib/font/devName 디렉토리에 있는 ASCII DESC 파일은 Name 변수로 지정된 사진 식자기의 특성을 설명합니다. 이 파일의 2진 버전은 /usr/lib/font/devName/DESC.out 파일에 있습니다. 이 ASCII 파일의 각 행은 특성을 식별하는 단어로 시작하고 그 뒤에 적절한 지정자가 옵니다. 공백 행과 # (파운드 부호) 로 시작하는 행은 무시됩니다.
많은 타자기의 경우 다운로드된 글꼴이 일반적인 방식으로 지원됩니다. 이러한 폰트의 비트맵은 /usr/lib/font/devName/bitmaps 디렉토리에 저장됩니다. 각 글꼴 크기 쌍은 Fontname-Size.pk양식의 이름으로 파일에 저장됩니다. 예를 들어 다음과 같습니다.
B-24.pk 이러한 비트맵은 TeX 및 해당 사후 프로세서에서 사용되는 PK 팩형 글꼴 형식으로 저장됩니다. 이러한 비트맵은 METAFONT와 같이 쉽게 사용할 수 있는 프로그램에서 쉽게 생성되거나 다른 양식에서 쉽게 변환됩니다.
비트맵 파일 외에도 여기에 설명된 대로 troff 폰트 파일이 각 폰트 글자체에 필요합니다. 이 파일의 unitwidth 필드에는 장치 단위에 있는 각 문자 비트맵의 너비가 제공됩니다.
DESC 파일의 올바른 행은 다음과 같습니다.
| 항목 | 설명 |
|---|---|
| res 번호 | 인치당 기본 증분으로 디바이스의 해상도입니다. |
| unitwidth 숫자 | 글꼴 설명 파일의 모든 너비 테이블이 제공되는 포인트 크기입니다. troff 명령은 자동으로 unitwidth 크기에서 작업 중인 포인트 크기로 너비를 조정합니다. |
| sizescale 숫자 | 소수점 크기의 배율입니다. Number 변수의 값은 1입니다. sizescale 행은 현재 사용되지 않습니다. |
| 용지 너비 숫자 | 기본 증분의 용지 너비입니다. |
| 용지 길이 번호 | 기본 증분의 용지 길이입니다. |
| biggestfont 숫자 | 글꼴의 최대 문자 수입니다. |
| 크기 Number1 Number2... | Typesetter에서 사용 가능한 포인트 크기 목록이며 0으로 끝납니다. |
| 글꼴 NumberName... | 폰트의 ASCII 이름이 뒤에 오는 초기 폰트의 수입니다. 예를 들어 다음과 같습니다. |
| 코드셋 codesetName | 특정 프린터 또는 식자기에 대한 코드 세트. 여기서 CodesetName 은 iconv 명령과 함께 사용할 수 있는 유효한 코드 세트 이름입니다. 지정된 코드 세트는 폰트 설명 파일의 문자 세트 섹션에서 문자 항목을 정의하는 데 사용됩니다. 예를 들어 다음과 같습니다.troff 명령은 지정된 CodesetName 및 현재 로케일에 내포된 코드 세트를 사용하여 입력 문자에 코드 세트 변환이 필요한지 여부를 판별합니다. iconv 함수는 필요한 경우 코드 세트 변환을 수행하는 데 사용됩니다. |
| 문자 세트 | 파일의 마지막 키워드는 그 자체로 한 행에 있습니다. 다음은 이 장치에 대한 특수 문자 이름의 목록입니다. 이름은 공백 또는 줄 바꾸기로 구분됩니다. 목록은 필요한 만큼 길 수 있습니다. 이 목록에 없는 이름은 글꼴 설명 파일에서 허용되지 않습니다. |
| hor 번호 | 수평 이동의 최소 단위입니다. |
| vert 숫자 | 수직 이동의 최소 단위입니다. hor 및 vert 선은 수평 및 수직 방향으로 이동 사이의 관계를 설명합니다. 예를 들어, 디바이스가 두 방향 모두에서 단일 기본 증분으로 이동하는 경우 hor 및 vert 행의 값은 모두 1입니다. 수직 이동이 두 개의 기본 장치의 배수로만 발생하고 수평 이동이 하나의 기본 장치에서만 발생하는 경우, vert 는 2이고 hor 는 1입니다. |
phototypesetter에서 지원되는 각 글꼴의 경우, 이를 설명하는 글꼴과 이름이 동일한 ASCII 파일 (예: R, I, CW) 도 있습니다. 폰트 설명 파일의 형식은 다음과 같습니다.
| 항목 | 설명 |
|---|---|
| 이름 이름 | 글꼴의 이름입니다 (예: R 또는 CW). |
| internalname 이름 | 글꼴의 내부 이름입니다. |
| 특수 | 글꼴이 특별함을 표시하는 플래그를 설정합니다. |
| ligatures 이름 ...0 | 글꼴에 연결이 있음을 표시하는 플래그를 설정합니다. 연결 목록은 뒤에 오며 0 (영) 으로 끝납니다. 허용되는 연결은 ff fi fl ffi ffl입니다. |
| spacewidth 숫자 | 기본값 (em 공간의 1/3) 이외의 것이 필요한 경우 공간의 너비를 지정합니다. |
| 문자 세트 | 문자 세트는 끝에 와야 합니다. charset 단어 다음의 각 행은 폰트에서 하나의 문자를 설명합니다. 각 행에는 다음 두 가지 형식 중 하나가 있습니다.또는 여기서,Name필드는 1바이트문자 또는 DESC 파일에 있는 목록의 특수 문자 이름입니다. 다음Width필드는 기본 증분으로 되어 있습니다. 다음Kerning문자가 행 아래로 내려가면 필드는 1 이고, 문자 위로 올라가면 2 입니다.`a'및 3 (둘 다 상승 및 하강하는 경우). 다음Code필드는 문자를 생성하기 위해 식자기에 전송되는 숫자입니다. nls 폰트의 경우,Code필드는 멀티바이트 시퀀스일 수 있습니다. 확장 문자 출력 장치의 폰트의 경우,Code필드는 큰따옴표로 시작하고 끝나는 멀티바이트 시퀀스일 수 있습니다. 시퀀스에서 제어 또는 비인쇄 문자는 다음 이스케이프 시퀀스로 표시될 수 있습니다. |
| \n | 줄 바꾸기를 생성합니다. |
| \r | 리턴을 생성합니다. |
| \t | 탭을 생성합니다. |
| \b | 백스페이스를 생성합니다. |
| \" | 큰따옴표를 생성합니다. |
| \xdd | 16진수를 생성합니다. 여기서,dd두 개의 16진수입니다. |
| \ooo | 8진수를 생성합니다. 여기서,ooo세 개의 8진수입니다. 두 번째 형식은 다음과 같습니다.Name "는 문자에 둘 이상의 이름이 있음을 표시하는 데 사용됩니다. 큰따옴표는 이 이름이 이전 행과 동일한 값을 가지고 있음을 표시합니다. 다음Kerning및Code필드의 값이 사용되지 않는 경우Width필드는 큰따옴표입니다. 이 목록에 있는 서로 다른 총 문자 수는 DESC 파일의 biggestfont 행 값보다 크지 않아야 합니다. |
DESC.out 및 Font.out 파일은 DESC 파일에서 makedev 프로그램을 실행한 결과로 작성되었습니다.
대형 문자 세트의 폰트에 대한 폰트 테이블의 문자 세트 섹션에 프로토타입 문자가 제공됩니다. 일본어, 중국어 및 한국어 문자 세트와 같은 대형 문자 세트의 대부분의 문자는 동일한 너비를 가집니다. 이러한 프로토타입 문자는 다양한 바이트 길이의 문자 너비를 지정합니다. 커닝 및 코드 필드는 프로토타입 문자 항목에 사용할 수 없습니다. 이러한 항목은 문자 세트 섹션에 명시적으로 정의되지 않은 모든 문자에 적용됩니다. 프로토타입 문자를 통해 처리되는 문자의 프린터 또는 식자기 코드가 iconv 함수에 의한 변환 후 문자의 입력 코드와 동일하다고 가정합니다. 다음은 프로토타입 문자 정의입니다.
| 항목 | 설명 | |
|---|---|---|
| X0 | 너비 | csid ()에 대해 0값을 리턴하는 모든 문자의 너비입니다. |
| X1 | 너비 | 다른 곳에 정의되지 않은 모든 1바이트문자의 너비입니다. |
| X1 | 너비 | csid ()에 대해 값 1을 리턴하는 모든 문자의 너비입니다. |
| X2 | 너비 | 다른 곳에 정의되지 않은 모든 2바이트문자의 너비입니다. |
| X 나 | 너비 | csid ()에 대해 i 값을 리턴하는 모든 문자의 너비입니다. |
| X3 | 너비 | 다른 곳에 정의되지 않은 모든 3바이트문자의 너비입니다. |
| X4 | 너비 | 다른 곳에 정의되지 않은 모든 4바이트문자의 너비입니다. |
예를 들어, 다음의 프로토타입 문자 정의는 일본어 문자 집합(와 IBM-932 모두 IBM-eucJP )에 적용됩니다:
X0 : alphanumeric characters
X1 : JIS level 1 and 2 Kanji characters in JISX0208.1990
X2 : Katakana characters
X3 : IBM selected characters파일
| 항목 | 설명 |
|---|---|
| /usr/lib/font/dev이름/DESC.out 파일 | Name 변수로 지정된 사진 식자기에 대한 설명 파일을 포함합니다. |
| /usr/lib/font/dev이름/bitmaps 디렉토리 | 비트맵 파일을 포함합니다. |
| /usr/lib/font/dev이름/Font.out 파일 | Name 변수로 지정된 사진 식자기에 대한 글꼴 설명 파일을 포함합니다. |