Эта статья объясняет, как извлечь шрифт из PDF с использованием C# для дальнейшего анализа, редактирования и отладки. Она предоставит детали настройки IDE, список шагов для разработки приложения и рабочий код для извлечения шрифта из PDF Acrobat с использованием C#. Вы можете получить доступ и отобразить все свойства извлеченного шрифта и сохранить его на диск, если это необходимо.
Шаги для извлечения файла шрифта из PDF с использованием C#
- Настройте IDE для использования Aspose.PDF для извлечения шрифтов
- Загрузите исходный PDF-файл с объектом класса Document, установив имя PDF-файла
- Получите все шрифты в загруженном PDF с использованием класса FontUtilities
- Итерируйтесь по коллекции шрифтов
- Создайте поток в памяти и сохраните извлеченный шрифт на диск, если это необходимо
- Отобразите различные свойства шрифта в консоли
Эти шаги объясняют, как извлечь шрифт из файла PDF с использованием C#. Загрузите PDF-файл в объект класса Document и получите список всех шрифтов с использованием класса FontUtilities. Итерируйтесь по всем шрифтам в списке, отобразите их свойства и сохраните их в потоке памяти для создания файла шрифта на диске, если это необходимо.
Код для извлечения шрифта из файла PDF с использованием C#
// Create a new instance of the License class | |
var pdfLic = new License(); | |
// Set the license using the provided license file ("license.lic"). | |
pdfLic.SetLicense("license.lic"); | |
// Open the PDF document | |
using (var document = new Aspose.Pdf.Document("Test.pdf")) | |
{ | |
// Retrieve all fonts used in the PDF document | |
Aspose.Pdf.Text.Font[] fonts = document.FontUtilities.GetAllFonts(); | |
// Iterate through each font in the fonts array. | |
foreach (Aspose.Pdf.Text.Font font in fonts) | |
{ | |
// Create a MemoryStream to temporarily store the font data. | |
using (MemoryStream memoryStream = new MemoryStream()) | |
{ | |
// Save the font data into the MemoryStream. | |
font.Save(memoryStream); | |
// Write the font data from the MemoryStream to a .TTF file. | |
// The file is named after the font's name. | |
File.WriteAllBytes($"{font.FontName}.TTF", memoryStream.ToArray()); | |
// Print the font name | |
Console.WriteLine(font.FontName); | |
} | |
} | |
} |
Этот код демонстрирует процесс извлечения шрифта из PDF с использованием C#. Если вы хотите извлечь встроенные шрифты, используйте флаг IsEmbedded для каждого шрифта и обработайте его соответствующим образом. Класс Font предоставляет различные другие свойства, которые можно получить, такие как флаг IsAccessible, который показывает, установлен ли шрифт в системе, и получение последней ошибки встраивания шрифта.
Эта статья научила нас, как получить доступ и отобразить шрифты в файле PDF. Чтобы преобразовать URL в PDF, см. статью Преобразование URL в PDF с использованием C#.