Aspose.Font для JavaScript через C++ – FAQ
В: Что такое Aspose.Font для JavaScript через C++?
О: Aspose.Font for JavaScript через C++ — это собственная библиотека C++, созданная для JavaScript, которая позволяет разработчикам создавать, преобразовывать и манипулировать файлами шрифтов программно без каких-либо внешних зависимостей.
В: Какие форматы шрифтов поддерживаются для конвертации?
О: Библиотека поддерживает TrueType (TTF), OpenType (OTF), формат открытых веб-шрифтов (WOFF/WOFF2), встроенный OpenType (EOT) и коллекции шрифтов, такие как коллекции TTC и OTF. Преобразование между любыми из этих форматов полностью поддерживается.
В: Как установить JavaScript Aspose.Font через пакет C++?
О: Используйте npm для установки предварительно созданного двоичного пакета:
1npm install aspose.font-cppПакет содержит собственные двоичные файлы C++ для Windows, Linux и macOS, а также оболочку JavaScript, которая загружает правильный двоичный файл во время выполнения.
В: Нужно ли мне самому компилировать исходный код C++?
О: Нет. В состав пакета npm входят предварительно скомпилированные двоичные файлы для основных платформ. Если вам нужна собственная сборка (например, для другой архитектуры), вы можете загрузить исходный код из репозитория Aspose GitHub и скомпилировать его с помощью CMake.
В: Как осуществляется лицензирование в версии JavaScript-через-C++?
О: Лицензирование работает так же, как и версии .NET/Java. После покупки лицензии поместите файл .lic в свой проект и вызовите aspose.font.Font.setLicense(“path/to/license.lic”) перед любыми другими вызовами API. Файл лицензии встроен в собственный двоичный файл во время выполнения.
В: Могу ли я извлечь контуры и метрики глифов из шрифта?
О: Да. API предоставляет Font.getGlyph(glyphId)`, который возвращает объект, содержащий векторный контур глифа (в виде серии точек контура), ширину продвижения, левостороннее направление и сопоставления Юникода. Это полезно для пользовательских механизмов рендеринга.
В: Полная ли поддержка Unicode для всех скриптов?
О: Библиотека полностью поддерживает кодовые точки Unicode до U+10FFFF, включая суррогатные пары. Он правильно сопоставляет символы Юникода с индексами глифов, обрабатывает таблицы макетов OpenType и учитывает особенности языка по запросу.
В: Как преобразовать шрифт TTF в WOFF2?
О: Пример кода:
1const aspose = require("aspose.font-cpp");
2aspose.Font.setLicense("Aspose.Total.lic");
3
4const font = aspose.Font.load("MyFont.ttf");
5font.save("MyFont.woff2", aspose.FontSaveOptions.createWoff2SaveOptions());Метод save автоматически выбирает подходящий кодировщик на основе расширения файла или объекта параметров сохранения.
В: Каковы характеристики производительности больших коллекций шрифтов?
О: Собственное ядро C++ оптимизировано для снижения нагрузки на память и быстрого ввода-вывода. Загрузка TTC (коллекция TrueType), содержащая до 100 шрифтов, на современном процессоре обычно занимает менее 100 мс, а преобразование одного шрифта составляет в среднем 30–50 мс.
В: Можно ли использовать библиотеку в бессерверной среде (например, AWS Lambda)?
О: Да. Бинарный файл статически скомпонован и не зависит от внешних системных шрифтов. Разверните пакет npm с вашим пакетом функций Lambda и убедитесь, что у роли выполнения есть разрешение на чтение файла лицензии и всех входных файлов шрифтов.
В: Как обрабатывать ошибки при загрузке поврежденного файла шрифта?
О: Все вызовы API выдают aspose.font.FontException. Вы можете перехватить это исключение, чтобы получить подробный код ошибки и сообщение:
1try {
2 const font = aspose.Font.load("corrupt.ttf");
3} catch (e) {
4 console.error("Font load failed:", e.message);
5}Иерархия исключений различает ошибки ввода-вывода, ошибки формата и ошибки лицензии.
В: Какие операционные системы и архитектуры официально поддерживаются?
О: Windows (x64), Linux (x64, ARM64) и macOS (x64, ARM64). Пакет npm содержит двоичные файлы для каждой из этих платформ. Для неподдерживаемых платформ вы можете скомпилировать из исходного кода.
В: Как встроить сгенерированный шрифт WOFF2 в веб-страницу?
О: После преобразования предоставьте файл .woff2 с правильным типом MIME (font/woff2). В HTML:
1<link rel="stylesheet" href="styles.css">
2<style>
3@font-face {
4 font-family: "MyCustomFont";
5 src: url("MyFont.woff2") format("woff2");
6}
7</style>Сгенерированный шрифт полностью соответствует спецификации WOFF2, поэтому браузеры будут отображать его без дополнительной обработки.
В: Где я могу найти пример кода и справочную документацию по API?
О: Подробная документация, справочник по API и фрагменты кода доступны на веб-сайте Aspose по адресу
https://docs.aspose.com/font/java/. Раздел JavaScript-через C++ отражает документацию по .NET/Java, а репозиторий GitHub содержит примеры проектов для распространенных сценариев.
В: Как обновить библиотеку до более новой версии?
О: Запустите npm update aspose.font-cpp, чтобы получить последний пакет. Просмотрите примечания к выпуску на предмет критических изменений, особенно если введены новые параметры сохранения или устаревшие версии. Всегда повторно тестируйте конвейеры преобразования шрифтов после обновления.