Установите свойство DefaultFont объектов PdfSaveOptions и ImageOrPrintOptions в приоритетном порядке
Возможные сценарии использования
При установке свойства DefaultFont объекта PdfSaveOptions и ImageOrPrintOptions, возможно, вы ожидаете, что сохранение в PDF или изображение установит этот DefaultFont для всего текста в книге, у которого отсутствует (не установлен) шрифт.
Как правило, при сохранении в PDF или изображение, Aspose.Cells сначала попытается установить шрифт по умолчанию книги (т. е. Workbook.DefaultStyle.Font). Если шрифт по умолчанию книги все равно не может правильно отображать/воспроизводить текст, то Aspose.Cells попытается воспроизвести с шрифтом, указанным против атрибута DefaultFont в PdfSaveOptions/ImageOrPrintOptions.
Чтобы соответствовать вашим ожиданиям, у нас есть логическое свойство с именем “CheckWorkbookDefaultFont” в PdfSaveOptions/ImageOrPrintOptions. Вы можете установить его в false, чтобы отключить попытку использования шрифта по умолчанию книги или предоставить приоритет настройке DefaultFont в PdfSaveOptions/ImageOrPrintOptions.
Установите свойство DefaultFont объектов PdfSaveOptions/ImageOrPrintOptions
Приведенный ниже примерный код открывает файл Excel. Ячейка A1 (на первом листе) имеет текст “Christmas Time Font text”. Название шрифта “Christmas Time Personal Use” отсутствует на компьютере. Мы устанавливаем атрибут DefaultFont объекта PdfSaveOptions/ImageOrPrintOptions на “Times New Roman”. Мы также устанавливаем логическое свойство CheckWorkbookDefaultFont в “false”, что гарантирует, что текст ячейки A1 воспроизводится шрифтом “Times New Roman” и не использует шрифт по умолчанию книги (в этом случае - “Calibri”). Код воспроизводит первый лист в форматах PNG и TIFF. Наконец, он воспроизводится в формате PDF.
Это скриншот шаблонного файла, используемого в примере кода.
Это выходное изображение PNG после установки свойства ImageOrPrintOptions.DefaultFont в “Times New Roman”.
См. выходной файл TIFF изображения после установки свойства ImageOrPrintOptions.DefaultFont на “Times New Roman”.
См. выходной PDF файл после установки свойства PdfSaveOptions.DefaultFont на “Times New Roman”.
Образец кода
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//Open an Excel file. | |
Workbook workbook = new Workbook(sourceDir + "sampleSetDefaultFontPropertyOfPdfSaveOptionsAndImageOrPrintOptions.xlsx"); | |
//Rendering to PNG file format while setting the CheckWorkbookDefaultFont attribue to false. | |
//So, "Times New Roman" font would be used for any missing (not installed) font in the workbook. | |
ImageOrPrintOptions imgOpt = new ImageOrPrintOptions(); | |
imgOpt.ImageType = ImageType.Png; | |
imgOpt.CheckWorkbookDefaultFont = false; | |
imgOpt.DefaultFont = "Times New Roman"; | |
SheetRender sr = new SheetRender(workbook.Worksheets[0], imgOpt); | |
sr.ToImage(0, outputDir + "out1_imagePNG.png"); | |
//Rendering to TIFF file format while setting the CheckWorkbookDefaultFont attribue to false. | |
//So, "Times New Roman" font would be used for any missing (not installed) font in the workbook. | |
imgOpt.ImageType = ImageType.Tiff; | |
WorkbookRender wr = new WorkbookRender(workbook, imgOpt); | |
wr.ToImage(outputDir + "out1_imageTIFF.tiff"); | |
//Rendering to PDF file format while setting the CheckWorkbookDefaultFont attribue to false. | |
//So, "Times New Roman" font would be used for any missing (not installed) font in the workbook. | |
PdfSaveOptions saveOptions = new PdfSaveOptions(); | |
saveOptions.DefaultFont = "Times New Roman"; | |
saveOptions.CheckWorkbookDefaultFont = false; | |
workbook.Save(outputDir + "out1_pdf.pdf", saveOptions); |