Squeak.ru - шаблоны программирования

Нужна помощь в поиске документа спецификации для файла двоичного шрифта Adobe Type1 - PFB

Мне нужно прочитать файлы PFB и извлечь из них информацию о глифах. Я не могу найти спецификацию для конкретного файла. У меня есть спецификация шрифта Adobe Type1. Но файл PFB находится в двоичном формате, и я не могу расшифровать из него информацию о глифах.

Я искал в Интернете спецификацию. Но все, что я нахожу, это спецификация типа 1 или информация о глифе. Но мне нужна инструкция, как получить информацию о глифе из файла PFB.

Заранее спасибо.


Ответы:


1

В Linux/Unix вы можете найти утилиту pfb2pfa. Этот инструмент преобразует файлы .pfb в их представление ASCII (с суффиксом .pfa). Просто запустите:

pfb2pfa /path/to/input-fontfile.pfb /path/to/output-fontfile.pfa

Вы также можете использовать Ghostscript для преобразования файлов шрифтов PFB в их форму PFA.

Сначала сохраните это содержимое в файл и назовите его pfb2pfa.ps:

[ shellarguments {
  counttomark 2 eq {
    /pfa exch def /pfb exch def pop
    /in1 pfb (r) file def
    /in in1 true /PFBDecode filter def
    /out pfa (w) file def
    { in read not { exit } if out exch write } loop
    out closefile in closefile in1 closefile
    quit
  } {
    cleartomark (Usage: pfbtopfa input.pfb output.pfa) = flush
  } ifelse
  } {
  pop
} ifelse

Затем для Ghostscript в Windows запустите эту команду, чтобы преобразовать fontname.pfb:

 gswin32c.exe ^
   -q ^
   -P- ^
   -dSAFER ^
   -dNODISPLAY ^
   -- ^
   "d:/path/to/pfb2pfa.ps" ^
   "f:/path/to/fontname.pfb" ^
   "e:/path/to/fontname.pfa"

Для Ghostscript в Linux, Unix или Mac выполните эту модифицированную команду:

 gs \
   -q \
   -P- \
   -dSAFER \
   -dNODISPLAY \
   -- \
   "/path/to/pfb2pfa.ps" \
   "/path/to/fontname.pfb" \
   "/path/to/fontname.pfa"

Файлы шрифтов PFA представляют собой читаемый код PostScript, и я помогу вам достичь того, чего вы хотите...

Если вам не повезло, они могут содержать большой раздел PostScript в кодировке eexec. Это вам также нужно декодировать для полностью читаемого кода PostScript....

30.04.2011
  • ... Мне не повезло. Любые советы о том, как нам декодировать большой раздел PostScript, закодированный eexec? 21.03.2013
  • @Pacerier: Извините, это не что легко и быстро ответить. Я предлагаю вам поставить его как новый, отдельный вопрос. Таким образом, я могу найти его снова через несколько дней, когда у меня (надеюсь) будет больше времени. Или, если повезет, на этот ответ ответит кто-то другой... 22.03.2013
  • Новые материалы

    Угловая структура архитектуры
    Обратите внимание, что эта статья устарела, я решил создать новую с лучшей структурой и с учетом автономных компонентов: https://medium.com/@marekpanti/angular-standalone-architecture-b645edd0d54a..

    «Данные, которые большинство людей используют для обучения своих моделей искусственного интеллекта, поставляются со встроенным…
    Первоначально опубликовано HalkTalks: https://hacktown.com.br/blog/blog/os-dados-que-a-maioria-das-pessoas-usa-para-treinar-seus-modelos-de-inteligencia-artificial- ja-vem-com-um-vies-embutido/..

    Сильный ИИ против слабого ИИ: различия парадигм искусственного интеллекта
    В последние годы изучению и развитию искусственного интеллекта (ИИ) уделяется большое внимание и прогресс. Сильный ИИ и Слабый ИИ — две основные парадигмы в области искусственного интеллекта...

    Правильный способ добавить Firebase в ваш проект React с помощью React Hooks
    React + Firebase - это мощная комбинация для быстрого и безопасного создания приложений, от проверки концепции до массового производства. Раньше (знаете, несколько месяцев назад) добавление..

    Создайте API с помощью Python FastAPI
    Создание API с помощью Python становится очень простым при использовании пакета FastAPI. После установки и импорта вы можете создать приложение FastAPI и указать несколько конечных точек. Каждой..

    Веселье с прокси-сервером JavaScript
    Прокси-серверы JavaScript — это чистый сахар, если вы хотите создать некоторую общую логику в своих приложениях, чтобы облегчить себе жизнь. Вот один пример: Связь клиент-сервер Мы..

    Получить бесплатный хостинг для разработчиков | Разместите свой сайт за несколько шагов 🔥
    Статические веб-сайты — это веб-страницы с фиксированным содержанием и его постоянным содержанием. Но теперь статические сайты также обрабатывают динамические данные с помощью API и запросов...