Standard-Schriftarten für Präsentationen in C++

Standard‑Schriftart festlegen

Mit Aspose.Slides für C++ können Sie die Standardschriftart in PowerPoint‑Präsentationen festlegen. Eine neue Methode set_DefaultRegularFont() wurde zur Klasse SaveOptions hinzugefügt. Sie ermöglicht es, die Standardschriftart festzulegen, die anstelle aller fehlenden Schriftarten verwendet wird, wenn Präsentationen in verschiedene Formate gespeichert werden, ohne die Präsentationen neu zu laden.

Das nachstehende Code‑Snippet demonstriert das Speichern einer Präsentation als HTML und PDF mit unterschiedlichen Standardschriftarten.

Standard‑Schriftarten für die Darstellung einer Präsentation verwenden

Aspose.Slides ermöglicht es, die Standardschriftart für die Darstellung der Präsentation als PDF, XPS oder Thumbnails festzulegen. Dieser Artikel zeigt, wie DefaultRegularFont und DefaultAsianFont als Standardschriftarten definiert werden. Bitte folgen Sie den nachstehenden Schritten, um Schriftarten aus externen Verzeichnissen mithilfe der Aspose.Slides‑C++‑API zu laden:

  1. Erstellen Sie eine Instanz von LoadOptions.
  2. Setzen Sie die DefaultRegularFont auf die gewünschte Schriftart. Im folgenden Beispiel habe ich Wingdings verwendet.
  3. Setzen Sie die DefaultAsianFont auf die gewünschte Schriftart. Ich habe in dem folgenden Beispiel Wingdings verwendet.
  4. Laden Sie die Präsentation mit Presentation und den festgelegten Ladeoptionen.
  5. Erzeugen Sie nun das Folien‑Thumbnail, PDF und XPS, um die Ergebnisse zu prüfen.

Die Implementierung des Obigen ist unten angegeben.

// Verwenden Sie die Ladeoptionen, um die Standard‑Schriftarten für reguläre und asiatische Schriften festzulegen
auto loadOptions = MakeObject<LoadOptions>(LoadFormat::Auto);
loadOptions->set_DefaultRegularFont(u"Wingdings");
loadOptions->set_DefaultAsianFont(u"Wingdings");

auto pptx = MakeObject<Presentation>(u"DefaultFonts.pptx", loadOptions);

auto image = pptx->get_Slide(0)->GetImage(1, 1);
image->Save(u"DefaultFonts_out.png", ImageFormat::Png);
image->Dispose();

pptx->Save(u"DefaultFonts_out.pdf", SaveFormat::Pdf);
pptx->Save(u"DefaultFonts_out.xps", SaveFormat::Xps);

pptx->Dispose();

FAQ

Was genau beeinflussen DefaultRegularFont und DefaultAsianFont – nur den Export oder auch Thumbnails, PDF, XPS, HTML und SVG?

Sie wirken sich auf die gesamte Rendering‑Pipeline für alle unterstützten Ausgaben aus. Dazu gehören Folien‑Thumbnails, PDF, XPS, Raster‑Bilder, HTML und SVG, weil Aspose.Slides dieselbe Layout‑ und Glyphen‑Auflösungslogik für diese Ziele verwendet.

Werden Standardschriftarten angewendet, wenn man eine PPTX nur liest und speichert, ohne zu rendern?

Nein. Standardschriftarten kommen nur zum Tragen, wenn Text gemessen und gezeichnet werden muss. Ein reines Öffnen‑und‑Speichern einer Präsentation ändert weder die gespeicherten Schriftlaufdaten noch die Dateistruktur. Standardschriftarten werden bei Vorgängen aktiv, die Rendern oder Text‑Umfluss erfordern.

Wenn ich eigene Schriftordner hinzufüge oder Schriften aus dem Speicher bereitstelle, werden sie bei der Auswahl der Standardschriftarten berücksichtigt?

Ja. Benutzerdefinierte Schriftquellen erweitern den Katalog verfügbarer Familien und Glyphen, die die Engine nutzen kann. Standardschriftarten und alle Fallback‑Regeln prüfen zuerst diese Quellen, was auf Servern und in Containern zu einer zuverlässigeren Abdeckung führt.

Beeinflussen Standardschriftarten Textmetriken (Kerning, Advances) und damit Zeilenumbrüche und Zeilenumbruch?

Ja. Durch das Ändern der Schriftart ändern sich Glyphen‑Metriken, was Zeilenumbrüche, Zeilenfluss und Paginierung beim Rendern beeinflussen kann. Für Layout‑Stabilität sollten Sie entweder die Originalschriften einbetten oder metrisch kompatible Standard‑ und Fallback‑Familien auswählen.

Macht das Festlegen von Standardschriftarten überhaupt Sinn, wenn alle in der Präsentation verwendeten Schriften eingebettet sind?

Oft ist es nicht nötig, da eingebettete Schriften bereits ein konsistentes Erscheinungsbild gewährleisten. Standardschriftarten dienen dennoch als Sicherheitsnetz für Zeichen, die nicht im eingebetteten Subset enthalten sind, oder wenn eine Datei sowohl eingebettete als auch nicht eingebettete Texte kombiniert.