Konfigurieren von Schriftarten zur Darstellung von Tabellenkalkulationen

Mögliche Verwendungsszenarien

Das API von Aspose.Cells for Python via .NET bietet die Möglichkeit, Tabellen in Bildformaten zu rendern und sie in PDF- & XPS-Formate umzuwandeln. Um die Konvertierungsqualität zu maximieren, müssen die in der Tabelle verwendeten Schriftarten im Standard-Schriftartenordner des Betriebssystems vorhanden sein. Falls die erforderlichen Schriftarten fehlen, versucht das API, die benötigten Schriftarten durch die verfügbaren zu ersetzen.

Auswahl von Schriftarten

Unten ist der Prozess, den das API von Aspose.Cells for Python via .NET im Hintergrund ausführt.

  1. Die API versucht, die Schriftarten im Dateisystem zu finden, die dem exakten Schriftartnamen entsprechen, der in der Tabelle verwendet wird.
  2. Wenn die API die Schriftarten mit genau demselben Namen nicht finden kann, versucht sie, die Standardschriftart unter dem DefaultStyle.font-Eigenschaft des Arbeitsblatts zu verwenden.
  3. Wenn die API die unter DefaultStyle.font definierte Schriftart nicht finden kann, versucht sie, die Schriftart unter PdfSaveOptions.default_font oder ImageOrPrintOptions.default_font Eigenschaft zu verwenden.
  4. Wenn die API die unter PdfSaveOptions.default_font oder ImageOrPrintOptions.default_font definierte Schriftart nicht finden kann, versucht sie, die Schriftart unter FontConfigs.default_font_name Eigenschaft zu verwenden.
  5. Wenn die API die unter FontConfigs.default_font_name definierte Schriftart nicht finden kann, versucht sie, die geeignetsten Schriftarten aus allen verfügbaren Schriftarten auszuwählen.
  6. Schließlich rendert die API die Tabelle mit Arial, wenn sie keine Schriftarten im Dateisystem finden kann.

Benutzerdefinierte Schriftartordner einstellen

Aspose.Cells für Python via .NET APIs durchsuchen das Standard-Schriftartenverzeichnis des Betriebssystems nach den benötigten Schriftarten. Falls die erforderlichen Schriftarten nicht im Schriftartenverzeichnis des Systems verfügbar sind, durchsuchen die APIs die benutzerdefinierten (vom Benutzer definierten) Verzeichnisse. Die FontConfigs-Klasse bietet eine Reihe von Möglichkeiten, benutzerdefinierte Schriftartverzeichnisse festzulegen, wie unten beschrieben.

  1. FontConfigs.set_font_folder: Diese Methode ist nützlich, wenn nur ein Ordner festgelegt werden soll.
  2. FontConfigs.set_font_folders: Diese Methode ist nützlich, wenn die Schriftarten in mehreren Ordnern vorhanden sind und der Benutzer alle Ordner separat einrichten möchte, anstatt alle Schriftarten in einem einzigen Ordner zu kombinieren.
  3. FontConfigs.set_font_sources: Diese Mechanismus ist nützlich, wenn der Benutzer Schriften aus mehreren Ordnern laden möchte oder eine einzelne Schriftdatei oder Schriftdaten aus einem Byte-Array.
from aspose.cells import FileFontSource, FolderFontSource, FontConfigs, MemoryFontSource
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# The path to the documents directory.
dataDir = RunExamples.GetDataDir(".")
# Defining string variables to store paths to font folders & font file
fontFolder1 = dataDir + "Arial"
fontFolder2 = dataDir + "Calibri"
fontFile = dataDir + "arial.ttf"
# Setting first font folder with SetFontFolder method
# Second parameter directs the API to search the subfolders for font files
FontConfigs.set_font_folder(fontFolder1, True)
# Setting both font folders with SetFontFolders method
# Second parameter prohibits the API to search the subfolders for font files
FontConfigs.set_font_folders([fontFolder1, fontFolder2], False)
# Defining FolderFontSource
sourceFolder = FolderFontSource(fontFolder1, False)
# Defining FileFontSource
sourceFile = FileFontSource(fontFile)
# Defining MemoryFontSource
sourceMemory = MemoryFontSource(open(fontFile, "rb").read())
# Setting font sources
FontConfigs.set_font_sources([sourceFolder, sourceFile, sourceMemory])

Schriftarten-Ersatzmechanismus

Aspose.Cells für Python via .NET APIs bieten auch die Möglichkeit, die Ersatzschriftart für Darstellungszwecke festzulegen. Dieser Mechanismus ist hilfreich, wenn eine erforderliche Schriftart auf dem Rechner fehlt, auf dem die Konvertierung durchgeführt werden soll. Benutzer können eine Liste von Schriftartnamen als Alternative zur ursprünglich benötigten Schriftart angeben. Dafür haben die Aspose.Cells für Python via .NET APIs die exposierte FontConfigs.set_font_substitutes-Methode, die 2 Parameter akzeptiert. Der erste Parameter ist vom Typ string, der Name der zu ersetzenden Schriftart. Der zweite Parameter ist ein Array vom Typ string. Benutzer können eine Liste von Schriftartnamen als Ersatz für die ursprüngliche Schriftart angeben (im ersten Parameter angegeben).

Hier ist ein einfaches Anwendungsbeispiel.

from aspose.cells import FontConfigs
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# Substituting the Arial font with Times New Roman & Calibri
FontConfigs.set_font_substitutes("Arial", ["Times New Roman", "Calibri" ])

Informationssammlung

Neben den oben genannten Methoden haben die Aspose.Cells für Python via .NET APIs auch Möglichkeiten bereitgestellt, Informationen darüber zu sammeln, welche Quellen und Ersatzschriften festgelegt wurden.

  1. Die FontConfigs.get_font_sources Methode gibt ein Array vom Typ FontSourceBase zurück, das die Liste der angegebenen Schriftartenquellen enthält. Falls keine Quellen festgelegt wurden, gibt die FontConfigs.get_font_sources Methode ein leeres Array zurück.
  2. Die FontConfigs.get_font_substitutes Methode akzeptiert einen Parameter vom Typ string, mit dem die Schriftart festgelegt werden kann, für die die Ersetzung vorgenommen wurde. Falls keine Ersetzung für den angegebenen Schriftartnamen vorgenommen wurde, gibt die FontConfigs.get_font_substitutes Methode null zurück.

Erweiterte Themen