Hochgestellt und Tiefgestellt
Hochgestellten und Tiefgestellten Text verwalten
Sie können hochgestellten und tiefgestellten Text innerhalb jedes Absatzes hinzufügen. Um hochgestellten oder tiefgestellten Text im Aspose.Slides-Textrahmen hinzuzufügen, müssen die Escapement-Eigenschaften der PortionFormat-Klasse verwendet werden.
Diese Eigenschaft gibt den hochgestellten oder tiefgestellten Text zurück oder legt ihn fest (Wert von -100% (tiefgestellt) bis 100% (hochgestellt)). Zum Beispiel:
- Erstellen Sie eine Instanz der Presentation Klasse.
- Erhalten Sie die Referenz zu einer Folie, indem Sie ihren Index verwenden.
- Fügen Sie der Folie eine IAutoShape des Rechtecktyps hinzu.
- Greifen Sie auf den ITextFrame zu, der mit dem IAutoShape verknüpft ist.
- Löschen Sie bestehende Absätze.
- Erstellen Sie ein neues Absatzobjekt zum Halten von hochgestelltem Text und fügen Sie es der IParagraphs-Sammlung des ITextFrame hinzu.
- Erstellen Sie ein neues Portionsobjekt.
- Setzen Sie die Escapement-Eigenschaft für die Portion zwischen 0 und 100, um hochgestellten Text hinzuzufügen. (0 bedeutet keinen hochgestellten Text)
- Setzen Sie etwas Text für die Portion und fügen Sie diesen dann der Portionssammlung des Absatzes hinzu.
- Erstellen Sie ein neues Absatzobjekt zum Halten von tiefgestelltem Text und fügen Sie es der IParagraphs-Sammlung des ITextFrame hinzu.
- Erstellen Sie ein neues Portionsobjekt.
- Setzen Sie die Escapement-Eigenschaft für die Portion zwischen 0 und -100, um tiefgestellten Text hinzuzufügen. (0 bedeutet keinen tiefgestellten Text)
- Setzen Sie etwas Text für die Portion und fügen Sie diesen dann der Portionssammlung des Absatzes hinzu.
- Speichern Sie die Präsentation als PPTX-Datei.
Die Implementierung der oben genannten Schritte ist unten angegeben.
// The path to the documents directory. | |
const String outPath = u"../out/AddingSuperscriptAndSubscriptTextInTextFrame_out.pptx"; | |
//const String templatePath = u"../templates/DefaultFonts.pptx"; | |
// Load the desired the presentation | |
SharedPtr<Presentation> pres = MakeObject<Presentation>(); | |
// Access first slide | |
SharedPtr<ISlide> sld = pres->get_Slides()->idx_get(0); | |
// Add an AutoShape of Rectangle type | |
SharedPtr<IAutoShape> ashp = sld->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 100, 100, 300, 300); | |
// Add TextFrame to the Rectangle | |
SharedPtr<ITextFrame> tf = ashp->AddTextFrame(String::Empty); | |
tf->get_Paragraphs()->Clear(); | |
// Adding the first Paragraph | |
SharedPtr<Paragraph> superPar = MakeObject<Paragraph>(); | |
SharedPtr<Portion> portion1 = MakeObject<Portion>(u"SlideTitle"); | |
superPar->get_Portions()->Add(portion1); | |
SharedPtr<Portion> superPortion = MakeObject<Portion>(); | |
superPortion->get_PortionFormat()->set_Escapement(30); | |
superPortion->set_Text(u"TM"); | |
superPar->get_Portions()->Add(superPortion); | |
// Adding the first Paragraph | |
SharedPtr<Paragraph> subPar = MakeObject<Paragraph>(); | |
SharedPtr<Portion> portion2 = MakeObject<Portion>(u"a"); | |
subPar->get_Portions()->Add(portion2); | |
SharedPtr<Portion> subPortion = MakeObject<Portion>(); | |
subPortion->get_PortionFormat()->set_Escapement(-25); | |
subPortion->set_Text(u"i"); | |
subPar->get_Portions()->Add(subPortion); | |
//Adding to text frame | |
ashp->get_TextFrame()->get_Paragraphs()->Add(superPar); | |
ashp->get_TextFrame()->get_Paragraphs()->Add(subPar); | |
// Save PPTX to Disk | |
pres->Save(outPath, Aspose::Slides::Export::SaveFormat::Pptx); | |