Я пытаюсь написать программу просмотра шрифтов для шрифтов TrueType/OpenType с кодом VB6/VB5 (под Windows).
Это удивительно сложно:
1) в VB/winAPI я не нашел, как извлечь имя шрифта, или вообще свойства шрифта.
2) я могу установить шрифт (используя функцию API AddFontResource), но затем мне придется его удалить. Однако, хотя (AddFontResource" ожидает путь, для удаления шрифта требуется имя шрифта, которое мне неизвестно.
Есть ли способ использовать неустановленный шрифт ttf)?
Есть ли способ извлечь свойства шрифта с помощью vb6?
(Я могу написать программу на wxPython, но о шрифтах на python я знаю еще меньше, чем на VB)
2 ответа
Вы можете использовать библиотеку FreeType.
Это действительно так. Я сам столкнулся с той же проблемой (см. мой вопрос). В итоге я написал свой собственный синтаксический анализатор, потому что мне нужно было определить, поврежден шрифт или нет. Существует AddFontMemResourceEx
функция, которая:
Когда функция завершается успешно, вызывающая сторона этой функции может освободить память, на которую указывает pbFont, потому что система создала собственную копию памяти. Чтобы удалить установленные шрифты, вызовите метод RemoveFontMemResourceEx. Однако, когда процесс завершится, система выгрузит шрифты, даже если процесс не вызывал RemoveFontMemResource.
Кроме того, вы можете использовать Функции шрифтов и текста a>, чтобы получить метрики шрифта.
Похожие вопросы
Связанные вопросы
Новые вопросы
python
Python — это мультипарадигмальный многоцелевой язык программирования с динамической типизацией. Он предназначен для быстрого изучения, понимания и использования, а также обеспечивает чистый и унифицированный синтаксис. Обратите внимание, что Python 2 официально не поддерживается с 01.01.2020. Если у вас есть вопросы о версии Python, добавьте тег [python-2.7] или [python-3.x]. При использовании варианта Python (например, Jython, PyPy) или библиотеки (например, Pandas, NumPy) укажите это в тегах.