Заменить отсутствующие шрифты
Введение
Вы когда-нибудь открывали 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. здесь .