Получить замену без суффиксов
Добро пожаловать в это подробное руководство по управлению заменой шрифтов с помощью Aspose.Words для .NET. Если вы когда-либо сталкивались с проблемой неправильного отображения шрифтов в ваших документах, вы попали по адресу. В этом руководстве вы шаг за шагом проведете процесс эффективной замены шрифтов без суффиксов. Давайте начнем!
Предварительные условия
Прежде чем приступить к изучению руководства, убедитесь, что у вас есть следующее:
- Базовые знания C#. Понимание программирования на C# облегчит выполнение и реализацию этих шагов.
- Библиотека Aspose.Words для .NET: загрузите и установите библиотеку изссылка для скачивания.
- Среда разработки: настройте среду разработки, например Visual Studio, для написания и запуска кода.
- Образец документа: Образец документа (например,
Rendering.docx
), с которым можно работать в этом уроке.
Импортировать пространства имен
Во-первых, нам нужно импортировать необходимые пространства имен для доступа к классам и методам, предоставляемым Aspose.Words.
using Aspose.Words;
using Aspose.Words.Fonts;
using Aspose.Words.WarningInfo;
using System.Collections.Generic;
Шаг 1. Определите каталог документов
Для начала укажите каталог, в котором находится ваш документ. Это помогает найти документ, над которым вы хотите работать.
// Путь к каталогу ваших документов
string dataDir = "YOUR DOCUMENT DIRECTORY";
Шаг 2. Настройте обработчик предупреждения о подмене
Далее нам нужно настроить обработчик предупреждений, который будет уведомлять нас всякий раз, когда во время обработки документа происходит подмена шрифта. Это имеет решающее значение для выявления и устранения любых проблем со шрифтами.
DocumentSubstitutionWarnings substitutionWarningHandler = new DocumentSubstitutionWarnings();
Document doc = new Document(dataDir + "Rendering.docx");
doc.WarningCallback = substitutionWarningHandler;
Шаг 3. Добавьте собственные источники шрифтов
На этом этапе мы добавим собственные источники шрифтов, чтобы Aspose.Words мог находить и использовать правильные шрифты. Это особенно полезно, если у вас есть определенные шрифты, хранящиеся в пользовательских каталогах.
List<FontSourceBase> fontSources = new List<FontSourceBase>(FontSettings.DefaultInstance.GetFontsSources());
FolderFontSource folderFontSource = new FolderFontSource("C:\\MyFonts\\", true);
fontSources.Add(folderFontSource);
FontSourceBase[] updatedFontSources = fontSources.ToArray();
FontSettings.DefaultInstance.SetFontsSources(updatedFontSources);
В этом коде:
- Мы извлекаем текущие источники шрифтов и добавляем новые.
FolderFontSource
указывая на наш собственный каталог шрифтов (C:\\MyFonts\\
). - Затем мы обновляем источники шрифтов этим новым списком.
Шаг 4. Сохраните документ
Наконец, сохраните документ после применения настроек подстановки шрифтов. Для этого урока мы сохраним его в формате PDF.
doc.Save(dataDir + "WorkingWithFonts.GetSubstitutionWithoutSuffixes.pdf");
Шаг 5. Создайте класс обработчика предупреждений
Для эффективной обработки предупреждений создайте собственный класс, реализующийIWarningCallback
интерфейс. Этот класс будет захватывать и регистрировать любые предупреждения о замене шрифта.
public class DocumentSubstitutionWarnings : IWarningCallback
{
public void Warning(WarningInfo info)
{
if (info.WarningType == WarningType.FontSubstitution)
FontWarnings.Warning(info);
}
public WarningInfoCollection FontWarnings = new WarningInfoCollection();
}
В этом классе:
Warning
Метод фиксирует предупреждения, связанные с заменой шрифта.FontWarnings
Коллекция сохраняет эти предупреждения для дальнейшей проверки или регистрации.
Заключение
Теперь вы освоили процесс замены шрифтов без суффиксов с помощью Aspose.Words для .NET. Эти знания гарантируют, что ваши документы сохранят свой предполагаемый вид независимо от шрифтов, доступных в системе. Продолжайте экспериментировать с различными настройками и источниками, чтобы полностью использовать возможности Aspose.Words.
Часто задаваемые вопросы
Вопрос 1. Как использовать шрифты из нескольких пользовательских каталогов?
Вы можете добавить несколькоFolderFontSource
экземпляры вfontSources
список и соответствующим образом обновите источники шрифтов.
Вопрос 2. Где я могу скачать бесплатную пробную версию Aspose.Words для .NET?
Вы можете скачать бесплатную пробную версию на сайтеСтраница бесплатной пробной версии Aspose.
Вопрос 3. Могу ли я обрабатывать несколько типов предупреждений, используяIWarningCallback
?
Да,IWarningCallback
Интерфейс позволяет обрабатывать различные типы предупреждений, а не только подмену шрифта.
Вопрос 4: Где я могу получить поддержку для Aspose.Words?
Для получения поддержки посетитеФорум поддержки Aspose.Words.
В5: Можно ли приобрести временную лицензию?
Да, вы можете получить временную лицензию отстраница временной лицензии.