Bits'n'picas는 비트 맵 및 이모티콘 글꼴을 생성하고 변환하기위한 일련의 도구입니다.
비트 맵 글꼴 함수는 GUI와 명령 줄 모두에서 액세스 할 수 있습니다. 이모티콘 글꼴 함수는 명령 줄에서만 액세스 할 수 있습니다.
비트 맵 글꼴 편집기 GUI를 열기 위해 인수 또는 edit 명령없이 Bits'n'picas jar를 시작하십시오.
java -jar BitsNPicas.jar
java -jar BitsNPicas.jar edit
java -jar BitsNPicas.jar edit myfont.sfd
입력 형식은 입력 파일의 파일 확장자에 의해 결정됩니다. 지원되는 입력 형식에는 다음이 포함됩니다.
.kbitx -bits'n'picas 2.x 기본 저장 형식.kbits -bits'n'picas 1.x 기본 저장 형식.sfd -FONTFORGE (비트 맵 만; 개요가 지원되지 않음).bdf -x11 비트 맵 분배 형식.psf , .psfu , .psf.gz , .psfu.gz PC 화면 글꼴.suit -MAC OS 클래식 글꼴 여행 가방 (자원 포크).dfont -Mac OS 클래식 글꼴 여행 가방 (데이터 포크에서).nfnt -Mac OS 클래식 글꼴 자원 (데이터 포크).png -sfont 또는 rfont, Kreative Software의 Sfont 확장.png , .jpg , .jpeg , .gif , .bmp 이미지에서 만들기 (GUI 만 해당).bin , .rom 이진 파일에서 생성 (GUI 만 해당).hex -GNU Unifont Hex 형식.cvt 변환 형식의 지오스 글꼴 (메가 글꼴 포함).fzx -Andrew Owen의 FZX (ZX Spectrum 용).u8m -u8/m (마이크로 컴퓨터의 경우 UTF -8).font -AMIGA 비트 맵 글꼴 (검은 색과 흰색 만; 지원되지 않음).fnt Windows .fnt 형식 ( .fon 과 동일하지 않음; 지원되지 않음).fnt , .ftx -ibm dos/v fontx2 형식.fnt , .mgf , .mpf Mousepaint/MouseGraphics Toolkit 글꼴.fnt , .rbf , .rb11 , .rb12 -Rockbox 글꼴 형식.fnt , .fntz , .fnty , .cyf Cybiko font 형식.fnt , .png PlayDate 글꼴 형식.set -Apple II HI -RES 문자 생성기 문자 세트.hmzk -mi 밴드 2 글꼴 형식.dsf -DOSSTART! Daniel L. Nice.sbf -Sabriel 비트 맵 글꼴Mac OS X에서는 Font 파일을 Bits'n'Picas 응용 프로그램에 시작하거나 삭제할 수도 있습니다.

Bits'n'picas는 또한 글꼴, 데스크 액세서리 및 시스템 여행 가방을 열고 Finder가 시스템 7의 좋은 날에 다시 할 수있는 것과 마찬가지로 글꼴, 책상 액세서리, 스크립트, 키보드 레이아웃 및 사운드를 이동할 수 있습니다.

GEOS 글꼴에 대해서도 비슷한 인터페이스가 존재합니다.

예:
java -jar BitsNPicas.jar convertbitmap -f ttf -o myfont.ttf myfont.sfd
Fontforge 파일 myfont.sfd 의 비트 맵 스트라이크를 새로운 Truetype 글꼴 파일 myfont.ttf 의 윤곽선으로 변환됩니다. 예를 들어 비트 맵 스트라이크가 높이 16 픽셀 인 경우 생성 된 윤곽선은 16 포인트 글꼴 크기로 픽셀 그리드와 완벽하게 일치합니다.
입력 형식은 입력 파일의 파일 확장자에 의해 결정됩니다. 지원되는 입력 형식에는 다음이 포함됩니다.
.kbitx -bits'n'picas 2.x 기본 저장 형식.kbits -bits'n'picas 1.x 기본 저장 형식.sfd -FONTFORGE (비트 맵 만; 개요가 지원되지 않음).bdf -x11 비트 맵 분배 형식.psf , .psfu , .psf.gz , .psfu.gz PC 화면 글꼴.suit -MAC OS 클래식 글꼴 여행 가방 (자원 포크).dfont -Mac OS 클래식 글꼴 여행 가방 (데이터 포크에서).nfnt -Mac OS 클래식 글꼴 자원 (데이터 포크).png -sfont 또는 rfont, Kreative Software의 Sfont 확장.hex -GNU Unifont Hex 형식.cvt 변환 형식의 지오스 글꼴 (메가 글꼴 포함).fzx -Andrew Owen의 FZX (ZX Spectrum 용).u8m -u8/m (마이크로 컴퓨터의 경우 UTF -8).font -AMIGA 비트 맵 글꼴 (검은 색과 흰색 만; 지원되지 않음).fnt Windows .fnt 형식 ( .fon 과 동일하지 않음; 지원되지 않음).fnt , .ftx -ibm dos/v fontx2 형식.fnt , .mgf , .mpf Mousepaint/MouseGraphics Toolkit 글꼴.fnt , .rbf , .rb11 , .rb12 -Rockbox 글꼴 형식.fnt , .fntz , .fnty , .cyf Cybiko font 형식.fnt , .png PlayDate 글꼴 형식.set -Apple II HI -RES 문자 생성기 문자 세트.hmzk -mi 밴드 2 글꼴 형식.dsf -DOSSTART! Daniel L. Nice.sbf -Sabriel 비트 맵 글꼴 출력 형식은 -f 옵션에 의해 결정됩니다. 지원되는 출력 형식에는 다음이 포함됩니다.
kbitx 또는 kbnp2 -BITS'N'PICAS 2.X 기본 저장 형식kbits 또는 kbnp1 -BITS'N'PICAS 1.X 기본 저장 형식ttf 또는 truetype -TRUETYPEotb -OPENTYPE 비트 맵bdf -X11 비트 맵 배포 형식psf , psf2 , psf1 , psfgz , psf2gz , psf1gz PC 화면 글꼴suit -Mac OS 클래식 글꼴 여행 가방 (자원 포크)dfont -MAC OS 클래식 글꼴 여행 가방 (데이터 포크에서)nfnt -MAC OS 클래식 글꼴 자원 (데이터 포크)png 또는 sfont -SDL SFONTrfont -RFONT, KREATIVE 소프트웨어의 SFONT 확장hex - gnu unifont 16 진 형식cvt 또는 geos 변환 형식의 Geos Font (메가 옵션 포함)fzx -FZX의 Andrew Owen (ZX Spectrum 용)u8m -U8/M (마이크로 컴퓨터의 경우 UTF -8)font 또는 amiga -Amiga 비트 맵 글꼴 (검은 색과 흰색 만; 지원되지 않음)fnt 또는 fnt3 -Windows 3.x .fnt 형식 ( .fon 과 동일하지 않음)fnt2 -Windows 2.x .fnt 형식 ( .fon 과 동일하지 않음)fontx2 , fontx 또는 dosv -ibm dos/v fontx2 형식mgtk , mgf , mpf 또는 mousepaint -Mousepaint/Mousegraphics Toolkit 글꼴rb12 -Rockbox 2.3 이상을위한 Rockbox 글꼴 형식rb11 -Rockbox 2.2 이하 및 iPodlinux 용 Rockbox 글꼴 형식cybiko Cybiko 글꼴 형식playdate , playdate-allinone , playdate-fnt PlayDate Font Format, All-In-One (단일 .fnt 파일)playdate-separate , playdate-fnt+png -playdate font format, 별도 .fnt 및 .png 파일hrcg 또는 set -Apple II HI -RES 문자 생성기 문자 세트hmzk -MI 밴드 2 글꼴 형식sbf -Sabriel 비트 맵 글꼴추가 옵션은 다음과 같습니다.
-s regex -r 교체 -글꼴 이름에서 검색 및 재구성을 수행합니다.-b 가짜 뼈 효과를 적용하십시오.-w 단위 -h 단위 -eM 단위의 픽셀의 너비와 높이를 지정합니다 ( ttf 형식의 경우).-i fontid -z 크기 -글꼴 ID 및 글꼴 크기 ( nfnt 또는 geos 형식의 경우)를 지정하십시오. --help 옵션을 사용하여 모든 옵션의 목록을 볼 수 있습니다.
sbix 형식 사용 예 java -jar BitsNPicas.jar extractsbix AppleColorEmoji.ttf
이렇게하면 AppleColorEmoji.ttf 에서 PNG 파일로 디렉토리 AppleColorEmoji.ttf.sbix.d 로 이미지가 추출됩니다. 이 디렉토리에는 여러 개의 번호가 매겨진 하위 디렉토리가 있습니다. 숫자는 내면의 이미지의 EM 당 픽셀 에 해당합니다. (이것은 반드시 이미지 높이와 같은 것은 아닙니다!) 결과 디렉토리 구조는 다음과 같습니다.
AppleColorEmoji.ttf
AppleColorEmoji.ttf.sbix.d
20
glyph_43.png
glyph_44.png
...
32
glyph_43.png
glyph_44.png
...
...
java -jar BitsNPicas.jar extractsvg EmojiOne.otf
이렇게하면 EmojiOne.otf 에서 SVG 이미지가 압축되지 않은 SVG 파일로 디렉토리 EmojiOne.otf.svg.d 로 추출됩니다. (글꼴 내부의 SVG 데이터가 압축되면 압축 해제됩니다.) 결과 디렉토리 구조는 다음과 같습니다.
EmojiOne.otf
EmojiOne.otf.svg.d
glyph_2.svg
glyph_3.svg
...
CBDT / CBLC 형식을 사용하는 예 java -jar BitsNPicas.jar extractcbdt NotoColorEmoji.ttf
이것은 NotoColorEmoji.ttf 에서 png 이미지를 directory NotoColorEmoji.ttf.cbdt.d 로 추출합니다. 이 디렉토리에는 하나 이상의 번호가 매겨진 하위 디렉터가 있습니다. 숫자는 단순히 BitMapsize 레코드의 색인이며 다른 의미는 없습니다. 결과 디렉토리 구조는 다음과 같습니다.
NotoColorEmoji.ttf
NotoColorEmoji.ttf.cbdt.d
0000
glyph_4.png
glyph_5.png
....
metadata.txt
....
fontinfo.txt
각 하위 디렉토리 내의 metadata.txt 파일에는 CBLC 및 CBDT 테이블 내 다양한 데이터 구조의 모든 값이 나열됩니다. fontinfo.txt 파일은 편의를 위해 다른 관련없는 테이블의 다른 값을 나열합니다 (많은 글꼴 편집기는 glyf / loca 테이블이 없기 때문에 CBDT / CBLC 테이블로 글꼴을 열 수 없기 때문에).
COLR / CPAL 형식 Microsoft의 COLR / CPAL 형식은 현재 지원되지 않습니다.
이모티콘/컬러 글꼴을 만들려면 두 가지가 필요합니다.
sbix 형식 사용 예 java -jar BitsNPicas.jar injectsbix MyEmoji.ttf
이렇게하면 Truetype 글꼴 파일 MyEmoji.ttf 와 디렉토리 MyEmoji.ttf.sbix.d 의 이미지가 표시되고 sbix 테이블에 이미지가 포함 된 이미지가있는 새 Truetype 글꼴 파일 MyEmoji.ttf.sbix.ttf 생성합니다. 그런 다음 원하는 경우이 파일의 이름을 바꿀 수 있습니다. 이미지 디렉토리 내의 각 하위 디렉토리의 이름은 포함 된 이미지의 EM 당 픽셀 이어야합니다. (이것은 반드시 이미지 높이와 동일한 것은 아닙니다!) 각 하위 디렉토리 내의 각 이미지의 파일 이름은 glyph_123.png 양식이어야합니다 (Glyph Index in Decimal) 또는 char_ABCD.png (유니 코드 코드 포인트는 16 진수의)입니다. 각 이미지의 왼쪽 하단 위치는 Truetype 글꼴 파일에서 해당 글리프의 최소 x 및 y 좌표에 의해 결정됩니다. (Apple Color Emoji의 경우 이것은 단지 0,0으로 설정됩니다.)
java -jar BitsNPicas.jar injectsvg MyEmoji.otf
이렇게하면 디렉토리 MyEmoji.otf.svg.d 디렉토리의 OpenType 글꼴 파일 MyEmoji.otf 와 SVG 이미지가 표시되고 SVG 테이블에 내장 된 이미지가 포함 된 새로운 OpenType 글꼴 파일 MyEmoji.otf.svg.otf 생성합니다. 그런 다음 원하는 경우이 파일의 이름을 바꿀 수 있습니다. 이미지 디렉토리 내의 각 이미지의 파일 이름은 glyph_123_456.svg 형식이어야합니다 (Glyph의 범위, Glyph 지수는 10 진수의 경우), glyph_123.svg (단일 글리프의 경우, glyph 지수가 소수점에) 또는 char_ABCD.svg (싱글 Glyph, kecode code).
SVG 문서에 매핑 된 각 글리프 인덱스에 대해 해당 문서에는 해당 Glyph 지수에 해당하는 ID가있는 요소가 있어야합니다 (Glyph Index 123의 경우 id="glyph123" ). 이미지 파일 이름의 코드 포인트를 지정할 때 Glyph 인덱스를 알지 못하므로 자리 표시 자 id="glyph{{{0}}}" 사용할 수 있으며 주입 과정에서 적절한 Glyph 인덱스로 대체됩니다.
글꼴 파일 이름 앞에 -z 옵션을 지정하면 SVG 데이터가 GZIP를 사용하여 압축됩니다. Microsoft는 SVG-in-Opentype 형식이이를 지원한다고 주장하며 GZIP- 압축 SVG Glyphs를 사용한 Emojione 버전의 가용성이이를 뒷받침하는 것으로 보입니다. 그러나이 글을 쓰는 시점에서 최신 버전의 Firefox에서도 GZIP- 압축 SVG 글리프가있는 글꼴을 얻을 수 없었으므로 권장하지 않습니다.
이 형식을 사용하여 주입하려는 비 SVG 이미지가 많이있는 경우 다음과 같은 명령을 사용하여 내장 이미지로 SVG를 쉽게 생성 할 수 있습니다.
java -jar BitsNPicas.jar imagetosvg -x 0 -y -700 -w 800 -h 800 myimages/*.png
이렇게하면 지정된 각 비 SVG 이미지 파일에 해당하는 SVG 파일이 생성됩니다. -x , -y , -w , -h 옵션은 EM 장치의 이미지의 위치와 크기를 지정합니다. SVG y 축은 트루에 타입 y 축으로부터 역전되므로 음의 y 코디네이트는 기준선 위에 있고 양의 y 코디네이트는 기준 아래에 있다.
CBDT / CBLC 형식을 사용하는 예 java -jar BitsNPicas.jar injectcbdt MyEmoji.ttf
이렇게하면 디렉토리 MyEmoji.ttf.cbdt.d 의 TrueType 글꼴 파일 MyEmoji.ttf 와 PNG 이미지를 사용하여 CBDT 테이블에 내장 된 이미지가 포함 된 새로운 Truetype 글꼴 파일 MyEmoji.ttf.cbdt.ttf 생성합니다. 그런 다음 원하는 경우이 파일의 이름을 바꿀 수 있습니다. 각 비트 맵 크기에 대한 서브 디렉토리가 있어야합니다. 하위 디렉토리의 이름은 중요하지 않습니다. 각 서브 디렉토리 내의 각 이미지의 파일 이름은 glyph_123.png 양식이어야합니다 (Glyph Index in Decimal) 또는 char_ABCD.png (유니 코드 코드 포인트는 16 진수)입니다.
각 하위 디렉토리에는 CBLC 및 CBDT 테이블 내 다양한 데이터 구조에 사용할 metadata.txt 파일도 포함하는 것이 좋습니다. 다음은 최소한으로 권장됩니다.
horiAscender: *ascent in pixels (normally positive)*
horiDescender: *descent in pixels (normally negative)*
horiWidthMax: *max character width in pixels*
vertAscender: *ascent in pixels (normally positive)*
vertDescender: *descent in pixels (normally negative)*
vertWidthMax: *max character width in pixels*
ppemX: *pixels per em*
ppemY: *pixels per em*
glyph: *glyph index*
height: *image height in pixels*
width: *image width in pixels*
bearingX: *x offset in pixels*
bearingY: *y offset in pixels (positive is above the baseline)*
advance: *character width in pixels*
endGlyph
Glyph 인덱스의 경우 char_ABCD (유니 코드 코드 포인트와 함께) 또는 * 달리 지정되지 않은 모든 글리프를 덮을 수도 있습니다. 데이터 구조 자체 (다양한 오프셋, 카운트 및 글리프 인덱스 범위 및 다양한 유형의 인덱스 하위 테이블과 관련된 내용)와 관련된 필드는 지정할 필요가 없으며 지정된 경우 무시할 필요가 없으며 자동으로 계산됩니다. (지정된 메타 데이터에 관계없이 인덱스 하위 테이블 형식 1 및 비트 맵 데이터 형식 17, 18 및 19 만 사용됩니다.)
기본적으로 injectcbdt 글꼴에서 glyf , loca , CFF 또는 CFF2 테이블을 제거합니다. 이 테이블을 유지하려면 글꼴 파일 이름 앞에 -g 옵션을 지정하십시오.
COLR / CPAL 형식 Microsoft의 COLR / CPAL 형식은 현재 지원되지 않습니다.