StandardFont Eigenschaft von PdfSaveOptions und ImageOrPrintOptions Priorität einräumen

Mögliche Verwendungsszenarien

Beim Setzen der DefaultFont-Eigenschaft von PdfSaveOptions und ImageOrPrintOptions könnten Sie erwarten, dass beim Speichern als PDF oder Bild dieser DefaultFont auf den gesamten Text in einer Arbeitsmappe angewendet wird, der eine fehlende (nicht installierte) Schriftart hat.

Generell versucht Aspose.Cells für Python via .NET beim Speichern in PDF oder Bild zuerst, die Standardschriftart des Arbeitsbuchs (d.h. Workbook.DefaultStyle.Font) zu setzen. Falls die Standardschriftart des Arbeitsbuchs immer noch Text nicht richtig anzeigen oder rendern kann, versucht Aspose.Cells für Python via .NET, mit der Schriftart zu rendern, die gegen das DefaultFont-Attribut in PdfSaveOptions/ImageOrPrintOptions gesetzt ist.

Um Ihre Erwartungen zu erfüllen, haben wir eine boolesche Eigenschaft namens “check_workbook_default_font” in PdfSaveOptions/ImageOrPrintOptions. Sie können sie auf false setzen, um das Verwenden der Standardschriftart des Arbeitsbuchs zu deaktivieren, oder die Einstellung default_font in PdfSaveOptions/ImageOrPrintOptions priorisieren.

StandardFont-Eigenschaft von PdfSaveOptions/ImageOrPrintOptions festlegen

Das folgende Beispiel öffnet eine Excel-Datei. Die Zelle A1 (im ersten Arbeitsblatt) enthält den Text “Christmas Time Font text”. Der Schriftname ist “Christmas Time Personal Use”, der nicht auf dem Computer installiert ist. Wir setzen das Attribut default_font von PdfSaveOptions/ImageOrPrintOptions auf “Times New Roman”. Außerdem setzen wir die boolesche Eigenschaft check_workbook_default_font auf “false”, damit der Text in A1 mit “Times New Roman” gerendert wird und nicht die Standardschriftart des Arbeitsbuchs (in diesem Fall “Calibri”) verwendet wird. Der Code rendert das erste Arbeitsblatt in PNG- und TIFF-Bilder. Schließlich wird in das PDF-Format exportiert.

Dies ist der Screenshot der im Beispielcode verwendeten Vorlagendatei.

todo:image_alt_text

Dies ist das Ausgabe-PNG-Bild nach Einstellung der Eigenschaft ImageOrPrintOptions.default_font auf “Times New Roman”.

todo:image_alt_text

Sehen Sie sich das Ausgabe-TIFF-Bild nach dem Setzen der ImageOrPrintOptions.default_font-Eigenschaft auf “Times New Roman” an.

Sehen Sie sich die Ausgabepdf-Datei nach dem Setzen der PdfSaveOptions.default_font-Eigenschaft auf “Times New Roman” an.

Beispielcode

from aspose.cells import PdfSaveOptions, Workbook
from aspose.cells.drawing import ImageType
from aspose.cells.rendering import ImageOrPrintOptions, SheetRender, WorkbookRender
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# Open an Excel file.
workbook = 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.
imgOpt = ImageOrPrintOptions()
imgOpt.image_type = ImageType.PNG
imgOpt.check_workbook_default_font = False
imgOpt.default_font = "Times New Roman"
sr = SheetRender(workbook.worksheets[0], imgOpt)
sr.to_image(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.image_type = ImageType.TIFF
wr = WorkbookRender(workbook, imgOpt)
wr.to_image(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.
saveOptions = PdfSaveOptions()
saveOptions.default_font = "Times New Roman"
saveOptions.check_workbook_default_font = False
workbook.save(outputDir + "out1_pdf.pdf", saveOptions)