Kā formatēt tekstu .NET
Aspose.Slides FOSS for .NET nodrošina smalku teksta formatēšanu, izmantojot PortionFormat klasi. Portion ir mazākā neatkarīgā teksta vienība; tā atbilst vienam formatēšanas posmam rindkopā. Šis ceļvedis parāda, kā prezentācijā uzlikt treknrakstu, slīprakstu, fonta lielumu un krāsas formatēšanu tekstam.
Solī pa solim ceļvedis
1. solis: instalēt pakotni
dotnet add package Aspose.Slides.Foss2. solis: Pievienot formu ar teksta rāmju
Pirms teksta formatēšanas formai jābūt TextFrame. Izmantojiet shape.AddTextFrame(), lai izveidotu to.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
var shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 500, 150);
var tf = shape.AddTextFrame("Default text: will be formatted");
prs.Save("output.pptx", SaveFormat.Pptx);3. solis: Piekļūt TextFrame
shape.AddTextFrame() atgriež TextFrame objektu. To var arī izgūt vēlāk, izmantojot shape.TextFrame.
var tf = shape.TextFrame; // if the frame already exists
var tf = shape.AddTextFrame(""); // creates a new frameTextFrame satur sarakstu ar Paragraph objektiem (tf.Paragraphs). Katrs Paragraph satur Portion objektus (paragraph.Portions).
4. solis: Pielietot treknrakstu un slīprakstu formatēšanu
Izmantojiet PortionFormat.FontBold un PortionFormat.FontItalic. Šīs īpašības pieņem NullableBool.True, NullableBool.False vai NullableBool.NotDefined (mantojot no galvenā).
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
var shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 500, 150);
var tf = shape.AddTextFrame("Bold and italic text");
var fmt = tf.Paragraphs[0].Portions[0].PortionFormat;
fmt.FontBold = NullableBool.True;
fmt.FontItalic = NullableBool.True;
prs.Save("bold-italic.pptx", SaveFormat.Pptx);5. solis: iestatīt fonta lielumu un krāsu
Iestatiet PortionFormat.FontHeight izmēram (punktos) un izmantojiet FillFormat krāsai.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
var shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 500, 150);
var tf = shape.AddTextFrame("Large corporate-blue heading");
var fmt = tf.Paragraphs[0].Portions[0].PortionFormat;
fmt.FontHeight = 32; // 32pt font
fmt.FontBold = NullableBool.True;
fmt.FillFormat.FillType = FillType.Solid;
fmt.FillFormat.SolidFillColor.Color = Color.FromArgb(255, 0, 70, 127);
prs.Save("colored-text.pptx", SaveFormat.Pptx);Color.FromArgb(alpha, red, green, blue) pieņem vērtības 0‑255 katram kanālam.
6. solis: Vairākas daļas vienā rindkopā
Viena rindkopa var saturēt vairākas daļas ar dažādu formatējumu. Pievienojiet jaunu Portion rindkopas Portions kolekcijai:
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
var shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 600, 100);
var tf = shape.AddTextFrame(""); // start with empty frame
var paragraph = tf.Paragraphs[0];
// First portion: normal text
var portion1 = paragraph.Portions[0];
portion1.Text = "Normal text followed by ";
portion1.PortionFormat.FontHeight = 20;
// Second portion: bold red text
var portion2 = new Portion();
portion2.Text = "bold red text";
portion2.PortionFormat.FontHeight = 20;
portion2.PortionFormat.FontBold = NullableBool.True;
portion2.PortionFormat.FillFormat.FillType = FillType.Solid;
portion2.PortionFormat.FillFormat.SolidFillColor.Color = Color.FromArgb(255, 200, 0, 0);
paragraph.Portions.Add(portion2);
prs.Save("mixed-format.pptx", SaveFormat.Pptx);Vispārējās problēmas un risinājumi
Teksts parādās melns, pat pēc krāsas iestatīšanas
Pārliecinieties, ka FillFormat.FillType = FillType.Solid ir iestatīts pirms krāsas piešķiršanas. Bez aizpildījuma tipa iestatīšanas krāsas maiņa var nebūt ietekmīga.
NullableBool.True pret true
PortionFormat.FontBold sagaida NullableBool.True, nevis C# true. C# true piešķiršana netiks kompilēta, jo tipi nav saderīgi.
Fonts neparādās saglabātajā failā
LatinFont īpašība iestata latīņu fontu ģimeni. Ja nav iestatīta, tiek izmantots prezentācijas tēmas fonts. Pielāgotie fonti jāiekļauj vai jābūt pieejamiem skatīšanas ierīcē.
Biežāk uzdotie jautājumi
Kā es varu mainīt fonta ģimeni?
Kopa PortionFormat.LatinFont:
fmt.LatinFont = new FontData("Arial");FontData pieņem fonta ģimenes nosaukumu kā virkni.
Kā iestatīt rindkopas līdzināšanu?
Izmantojiet ParagraphFormat.Alignment:
tf.Paragraphs[0].ParagraphFormat.Alignment = TextAlignment.Center;Atbalstītās vērtības: Left, Center, Right, Justify.
Kā iestatīt rindas atstarpi?
Izmantojiet ParagraphFormat.SpaceBefore (punkti pirms rindkopas) vai ParagraphFormat.SpaceAfter (punkti pēc rindkopas):
tf.Paragraphs[0].ParagraphFormat.SpaceBefore = 12; // 12pt before
tf.Paragraphs[0].ParagraphFormat.SpaceAfter = 6; // 6pt after