Заменить отсутствующие шрифты

Введение

Вы когда-нибудь открывали PDF-документ и обнаруживали, что некоторые шрифты отсутствуют? Это может быть неприятно, не так ли? Отсутствие шрифтов может привести к тому, что документ будет выглядеть совершенно не так, как задумал создатель. К счастью, с помощью Aspose.PDF для .NET вы можете легко заменить отсутствующие шрифты и гарантировать, что ваши PDF-документы сохранят свой предполагаемый вид. В этом руководстве мы проведем вас через весь процесс шаг за шагом, сделав его простым и понятным.

Предпосылки

Прежде чем начать, вам необходимо подготовить несколько вещей:

  1. Aspose.PDF для .NET: Убедитесь, что у вас установлена библиотека Aspose.PDF. Вы можете загрузить ее с здесь .
  2. Visual Studio: среда разработки, в которой вы можете писать и тестировать свой код.
  3. Базовые знания 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. здесь .