Есть ли в Linux доступная таблица шрифтов на уровне пользователя? - PullRequest
3 голосов
/ 31 декабря 2010

Так как есть: http://en.wikipedia.org/wiki/Code_page_437 Для MSDOS есть ли что-то похожее для систем Linux?Можно ли получить доступ к этим данным шрифта через пользовательскую программу?На самом деле мне просто нужен был бы доступ к фактическим битовым шаблонам, которые определяют шрифт, и я бы делал рендеринг сам.Я вполне уверен, что что-то , подобное этому, существует, но я не смог найти, что это такое и как получить к нему доступ.В конце концов, например, консольный шрифт в текстовом режиме должен где-то находиться, и я действительно надеюсь, что он «необработанно» доступен каким-то образом для пользовательской программы.

Прежде чем я забуду, я программируюмоя программа на C, и у меня есть доступ только к "стандартным" заголовкам разработки linux / posix.Единственное, что я мог придумать сам, - это использовать шрифты в / usr / share / fonts, но необходимость писать собственные реализации для извлечения данных оттуда не звучит как вариант;Я действительно хотел бы достичь этого с наименьшим возможным количеством байтов, поэтому я чувствую, что у меня есть возможность найти стандартный способ сделать это.

Для меня нереально сохранить свой собственный 8x8 ASCII-либо совместимый шрифт с программой (для хранения шрифта требуется всего 1024 байта (128 символов * 8x8 бит), что, безусловно, недопустимо для строгих ограничений размера (некоторые <1024 байта для кода + данные), с которыми я работаю)поэтому возможность использования данных шрифтов, хранящихся в самой системе, значительно упростит мою задачу.</p>

Ответы [ 2 ]

1 голос
/ 31 декабря 2010

Я посмотрел исходники consolechars и похоже, что для такого рода вещей есть целая библиотека. В Ubuntu он называется libconsole, а заголовочные файлы (например, lct / font.h) находятся в пакете console-tools-dev. Есть функции для поиска и загрузки шрифтов, которые, кажется, именно то, что вам нужно. И источник consolechars - хороший пример того, как их использовать.

0 голосов
/ 31 декабря 2010

Вы должны использовать freetype , он обычно устанавливается во всех Linux.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...