Trabalhando com fontes

Uma fonte é um conjunto de caracteres com determinado tamanho, cor e design. Aspose.Words permite trabalhar com fontes usando o namespace Fonts e a classe Font.

Formatação de fonte

A formatação atual da fonte é representada pelo objeto Font retornado pela propriedade Font. A classe Font contém uma ampla variedade de propriedades de fontes, replicando aquelas disponíveis em Microsoft Word.

O exemplo de código a seguir mostra como definir a formatação da fonte:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Set font formatting properties
Font font = builder.Font;
font.Bold = true;
font.Color = System.Drawing.Color.DarkBlue;
font.Italic = true;
font.Name = "Arial";
font.Size = 24;
font.Spacing = 5;
font.Underline = Underline.Double;
// Output formatted text
builder.Writeln("I'm a very nice formatted string.");
dataDir = dataDir + "DocumentBuilderSetFontFormatting_out.doc";
doc.Save(dataDir);

As propriedades de preenchimento também estão disponíveis para fontes para definir a formatação do preenchimento do texto. Isto permite alterar, por exemplo, a cor do primeiro plano ou a transparência do preenchimento do texto.

Obtendo espaçamento entre linhas de fonte

O espaçamento entre linhas da fonte é a distância vertical entre as linhas de base de duas linhas consecutivas de texto. Portanto, o espaçamento entre linhas inclui o espaço em branco entre as linhas junto com a altura do próprio caractere.

A propriedade LineSpacing foi introduzida na classe Font para obter esse valor, conforme exemplo abaixo:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir_WorkingWithDocument();
// Initialize document.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.Font.Name = "Calibri";
builder.Writeln("qText");
// Obtain line spacing.
Font font = builder.Document.FirstSection.Body.FirstParagraph.Runs[0].Font;
Console.WriteLine($"lineSpacing = {font.LineSpacing}");

Ênfase da fonteMark

Algumas línguas do Leste Asiático usam uma marca de ênfase especial para indicar ênfase. A classe Font fornece a propriedade EmphasisMark para obter ou definir os valores de enumeração EmphasisMark a serem aplicados durante a formatação.

O exemplo de código a seguir mostra como definir a propriedade EphasisMark:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
Document document = new Document();
DocumentBuilder builder = new DocumentBuilder(document);
builder.Font.EmphasisMark = EmphasisMark.UnderSolidCircle;
builder.Write("Emphasis text");
builder.Writeln();
builder.Font.ClearFormatting();
builder.Write("Simple text");
document.Save(dataDir + "FontEmphasisMark_out.doc");