Lavorare con il testo in un file XPS | .NET
Aggiunta di testo in un documento XPS
Aspose.Page per .NET offre la classe XpsGlyphs, con la quale è possibile aggiungere testo ai documenti XPS. È necessario specificare un pennello fornito dall’API.
L’esempio seguente utilizza XpsSolidColorBrush e salva l’oggetto della classe XpsDocument. Il seguente frammento di codice mostra le funzionalità complete per aggiungere testo a un documento XPS:
1// Add text to XPS document.
2
3// Create new XPS Document
4XpsDocument doc = new XpsDocument();
5
6string outputFileName = "AddText_out.xps";
7
8//Create a brush
9XpsSolidColorBrush textFill = doc.CreateSolidColorBrush(Color.Black);
10//Add glyph to the document
11XpsGlyphs glyphs = doc.AddGlyphs("Arial", 12, FontStyle.Regular, 300f, 450f, "Hello World!");
12glyphs.Fill = textFill;
13// Save resultant XPS document
14doc.Save(OutputDir + outputFileName);
Per Linux, macOS e altri sistemi operativi non Windows, offriamo l’utilizzo del nostro pacchetto Nuget Aspose.Page.Drawing. Utilizza il backend Aspose.Drawing al posto della libreria di sistema System.Drawing.
Nei frammenti di codice sopra e nei seguenti verrà utilizzato Aspose.Page.Drawing.FontStyle al posto di System.Drawing.FontStyle. I nostri esempi di codice su GitHub contengono tutte le sostituzioni necessarie.
I tipi di struttura grafica, come System.Drawing.Point, System.Drawing.PointF, System.Drawing.Rectangle, System.Drawing.RectangleF e System.Drawing.Color, sono inclusi nella libreria di sistema System.Drawing.Common anche su sistemi operativi non Windows, pertanto non vengono sostituiti.
Il risultato
Se devi cambiare la direzione da sinistra a destra a destra, come nei testi ebraici o arabi, modifica la proprietà BidiLevel, il cui valore predefinito è “0”, ovvero da sinistra a destra.
1glyphs.BidiLevel = 1;
1// Change direction of text from left-to-right to right-to-left, as in Hebrew or Arabic texts, in XPS document.
2
3// Create new XPS Document
4XpsDocument doc = new XpsDocument();
5
6string outputFileName = "AddTextRTL_out.xps";
7
8// Add Text
9XpsSolidColorBrush textFill = doc.CreateSolidColorBrush(Color.Black);
10XpsGlyphs glyphs = doc.AddGlyphs("Arial", 20, FontStyle.Regular, 400f, 200f, "TEN. rof SPX.esopsA");
11
12//Change direction of text from left-to-right to right-to-left
13glyphs.BidiLevel = 1;
14
15glyphs.Fill = textFill;
16// Save resultant XPS document
17doc.Save(OutputDir + outputFileName);
Il risultato
È possibile scaricare esempi e file di dati da GitHub.