문제

작년에 나는 누군가가 PC에서 사용할 수 있도록 OS 9 주변에서 오래된 Mac 글꼴을 변환해야했습니다. 그 당시 글꼴 데이터가 확장 된 속성 com.apple.resourcefork에 저장된 것을 발견했습니다. 실제 파일 크기는 터미널에서 0으로 표시됩니다. xattr -p com.apple.resourcefork font> font.ttf를 사용하여 확장 된 속성의 값을 인쇄 하여이 문제를 해결할 수있었습니다.

이제 스노우 레오파드와 HFS+ 파일 압축이 변경되었습니다. 이제 구식 확장 속성을 인쇄하려고하면 값이 아닌 16 진수 만 얻게됩니다. -X 옵션으로 지정되지 않는 한 새로운 확장 속성이 16 진이 나타납니다. 예는 다음과 같습니다.

xattr -l com.apple.FinderInfo Rublof
Rublof: com.apple.ResourceFork:
00000000  00 00 01 00 00 00 9E 50 00 00 9D 50 00 00 00 32  |.......P...P...2|
00000010  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  |................|
...
Rublof: com.apple.quarantine: 0000;4b75ae02;Mail;39396996-3C5C-48F5-8BDD-775EB40CAD9C|com.apple.mail

ResourceFork에서 XATTR -P를 실행하면 16 진수를 출력하여 검역소에서 실행하여 ASCII를 얻습니다. 분명히 Apple은 확장 된 속성을 처리하는 방식을 바꾸었고 아마도 OS 9 글꼴을 유지하는 사람들을 잊었을 것입니다.

여기에 놓친 것이 있습니까? 아니면 16 진수를 ASCII로 변환하기 위해 스크립트를 작성합니까?

도움이 되었습니까?

해결책

"/rsrc"또는 "/..namedfork/rsrc"를 파일 이름에 추가하여 리소스 포크에 액세스 할 수도 있습니다. 노력하다 cp Rublof/rsrc Rublof.ttf. 즉, 리소스 포크는 더 이상 사용되지 않지만 확장 된 속성은 그렇지 않습니다. "/..namedfork"메커니즘은 향후 릴리스에서 사라질 수 있습니다. 이 경우 XXD를 시도하여 바이너리로 다시 변환 할 수 있습니다.

xattr -p com.apple.ResourceFork Rublof | xxd -r > Rublof.ttf

다른 팁

리소스 포크를 데이터로 변환하는 것은 필요한 것을 수행하지 않습니다. 여전히 리소스 포크 형식이므로 아무것도 사용할 수 없습니다. 크로스 플랫폼 형식으로 가져 오려면 변환기가 필요합니다. 폰두. 구식 MAC 글꼴 여행 가방을 파고 SFNT 리소스 (Truetype & OpenType Fonts)를 .ttf 및 .otf 파일, Post Resources (Postscript Fonts)에서 .pbf 파일, NFNT 및 글꼴 리소스 (비트 맵 글꼴)로 추출합니다. .BDF 파일로.

BTW, SourceForge 다운로드 섹션의 Mac OS/X 패키지는 설치할 때 오류가 발생하지만 어쨌든 성공적으로 설치하는 것 같습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top