Заменить отсутствующие шрифты
Введение
Вы когда-нибудь открывали PDF-документ и обнаруживали, что некоторые шрифты отсутствуют? Это может быть неприятно, не так ли? Отсутствие шрифтов может привести к тому, что документ будет выглядеть совершенно не так, как задумал создатель. К счастью, с помощью Aspose.PDF для .NET вы можете легко заменить отсутствующие шрифты и гарантировать, что ваши PDF-документы сохранят свой предполагаемый вид. В этом руководстве мы проведем вас через весь процесс шаг за шагом, сделав его простым и понятным.
Предпосылки
Прежде чем начать, вам необходимо подготовить несколько вещей:
- Aspose.PDF для .NET: Убедитесь, что у вас установлена библиотека Aspose.PDF. Вы можете загрузить ее сздесь.
- Visual Studio: среда разработки, в которой вы можете писать и тестировать свой код.
- Базовые знания C#: знакомство с программированием на C# поможет вам лучше понимать фрагменты кода.
Импортные пакеты
Для начала вам нужно импортировать необходимые пакеты в ваш проект C#. Вот как это можно сделать:
using System;
using System.IO;
using Aspose.Pdf;
using Aspose.Pdf.Text;
Шаг 1: Настройте каталог документов
Во-первых, вам нужно указать путь к каталогу ваших документов. Это то место, где находится ваш входной PDF-файл и где будет сохранен выходной файл.
// Путь к каталогу документов.
string dataDir = "YOUR DOCUMENT DIRECTORY";
Шаг 2: Инициализация исходного шрифта
Далее вам нужно будет попытаться найти оригинальный шрифт, который может отсутствовать. В этом случае мы ищем «AgencyFB».
Aspose.Pdf.Text.Font originalFont = null;
try
{
originalFont = FontRepository.FindFont("AgencyFB");
}
catch (Exception)
{
//Шрифт отсутствует на целевом компьютере
FontRepository.Substitutions.Add(new SimpleFontSubstitution("AgencyFB", "Arial"));
}
Здесь мы пытаемся найти шрифт. Если он не найден, мы перехватываем исключение и заменяем его более распространенным шрифтом, “Arial”. Это гарантирует, что ваш документ будет выглядеть хорошо, даже если исходный шрифт недоступен.
Шаг 3: Загрузите PDF-документ
Теперь давайте загрузим PDF-документ, который вы хотите обработать. Вам нужно будет указать путь к входному файлу.
var fileNew = new FileInfo(dataDir + "newfile_out.pdf");
var pdf = new Document(dataDir + "input.pdf");
На этом этапе мы создаем новыйFileInfo
объект для выходного файла и загрузить входной PDF-документ в новыйDocument
объект.
Шаг 4: Преобразование PDF-документа
Перед сохранением документа рекомендуется преобразовать его в определенный формат PDF. В данном случае мы преобразуем его в формат PDF/A-1B, который является стандартом для долгосрочного архивирования электронных документов.
pdf.Convert(dataDir + "log.xml", PdfFormat.PDF_A_1B, ConvertErrorAction.Delete);
Эта строка преобразует PDF и регистрирует любые ошибки в указанном XML-файле. Если возникнут какие-либо проблемы во время преобразования, они будут записаны в “log.xml.”
Шаг 5: Сохраните обновленный PDF-документ.
Наконец, пришло время сохранить обновленный PDF-документ с замененными шрифтами.
pdf.Save(fileNew.FullName);
Эта строка сохраняет измененный PDF в указанном пути выходного файла. И вот так вы успешно заменили отсутствующие шрифты в вашем PDF-документе!
Заключение
Замена отсутствующих шрифтов в документах PDF не обязательно должна быть сложной задачей. С Aspose.PDF для .NET вы можете легко управлять заменой шрифтов и гарантировать, что ваши документы будут выглядеть именно так, как должны. Выполняя шаги, описанные в этом руководстве, вы сможете сохранить целостность ваших файлов PDF, даже если определенные шрифты недоступны. Таким образом, в следующий раз, когда вы столкнетесь с проблемой отсутствующего шрифта, вы будете точно знать, что делать!
Часто задаваемые вопросы
Что такое Aspose.PDF для .NET?
Aspose.PDF для .NET — это мощная библиотека, которая позволяет разработчикам программно создавать, изменять и конвертировать PDF-документы.
Могу ли я использовать Aspose.PDF бесплатно?
Да, Aspose предлагает бесплатную пробную версию, которую вы можете использовать для оценки библиотеки. Вы можете загрузить еездесь.
Что делать, если нужный мне шрифт отсутствует?
Вы можете заменить отсутствующий шрифт более распространенным, используя функцию замены шрифтов в Aspose.PDF.
Можно ли конвертировать PDF-файлы в другие форматы?
Конечно! Aspose.PDF поддерживает преобразование в различные форматы, включая PDF/A, DOCX и другие.
Где я могу найти поддержку по Aspose.PDF?
Вы можете найти поддержку и задать вопросы на форуме Aspose.здесь.