Style

Style class

Представляет отдельный встроенный или определяемый пользователем стиль.

public class Style

Характеристики

Имя Описание
Aliases { get; } Получает все псевдонимы этого стиля. Если стиль не имеет псевдонимов, то возвращается пустой массив строк.
BaseStyleName { get; set; } Получает/устанавливает имя стиля, на котором основан этот стиль.
BuiltIn { get; } Истинно, если этот стиль является одним из встроенных стилей в MS Word.
Document { get; } Получает документ владельца.
Font { get; } Получает форматирование символов стиля.
IsHeading { get; } Истинно, если стиль является одним из встроенных стилей заголовков.
IsQuickStyle { get; set; } Указывает, отображается ли этот стиль в галерее экспресс-стилей в пользовательском интерфейсе MS Word.
LinkedStyleName { get; } Получает имя стиля, связанного с этим стилем. Возвращает пустую строку, если стили не связаны.
List { get; } Получает список, определяющий форматирование этого стиля списка.
ListFormat { get; } Предоставляет доступ к свойствам форматирования списка стиля абзаца.
Name { get; set; } Получает или задает имя стиля.
NextParagraphStyleName { get; set; } Получает/задает имя стиля, который будет автоматически применяться к новому абзацу, вставленному после абзаца , отформатированного с использованием указанного стиля.
ParagraphFormat { get; } Получает форматирование абзаца стиля.
StyleIdentifier { get; } Получает независимый от языкового стандарта идентификатор стиля для встроенного стиля.
Styles { get; } Получает коллекцию стилей, к которым принадлежит этот стиль.
Type { get; } Получает тип стиля (абзац или символ).

Методы

Имя Описание
Equals(Style) Сравнивается с указанным стилем. Стандартные стили сравниваются только для встроенных стилей. Стили по умолчанию не учитываются при сравнении. Базовый стиль, связанный стиль и стиль следующего абзаца сравниваются рекурсивно.
Remove() Удаляет указанный стиль из документа.

Примеры

Показывает, как создать и использовать стиль абзаца с форматированием списка.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

// Создать собственный стиль абзаца.
Style style = doc.Styles.Add(StyleType.Paragraph, "MyStyle1");
style.Font.Size = 24;
style.Font.Name = "Verdana";
style.ParagraphFormat.SpaceAfter = 12;

// Создайте список и убедитесь, что абзацы, использующие этот стиль, будут использовать этот список.
style.ListFormat.List = doc.Lists.Add(ListTemplate.BulletDefault);
style.ListFormat.ListLevelNumber = 0;

// Применяем стиль абзаца к текущему абзацу конструктора документов, а затем добавляем текст.
builder.ParagraphFormat.Style = style;
builder.Writeln("Hello World: MyStyle1, bulleted list.");

// Измените стиль построителя документа на стиль без форматирования списка и напишите еще один абзац.
builder.ParagraphFormat.Style = doc.Styles["Normal"];
builder.Writeln("Hello World: Normal.");

builder.Document.Save(ArtifactsDir + "Styles.ParagraphStyleBulletedList.docx");

Показывает, как создать и применить пользовательский стиль.

Document doc = new Document();

Style style = doc.Styles.Add(StyleType.Paragraph, "MyStyle");
style.Font.Name = "Times New Roman";
style.Font.Size = 16;
style.Font.Color = Color.Navy;

DocumentBuilder builder = new DocumentBuilder(doc);

// Применяем один из стилей из документа к абзацу, который создает конструктор документов.
builder.ParagraphFormat.Style = doc.Styles["MyStyle"];
builder.Writeln("Hello world!");

Style firstParagraphStyle = doc.FirstSection.Body.FirstParagraph.ParagraphFormat.Style;

Assert.AreEqual(style, firstParagraphStyle);

// Удаляем наш пользовательский стиль из коллекции стилей документа.
doc.Styles["MyStyle"].Remove();

firstParagraphStyle = doc.FirstSection.Body.FirstParagraph.ParagraphFormat.Style;

// Любой текст, в котором использовался удаленный стиль, возвращается к форматированию по умолчанию.
Assert.False(doc.Styles.Any(s => s.Name == "MyStyle"));
Assert.AreEqual("Times New Roman", firstParagraphStyle.Font.Name);
Assert.AreEqual(12.0d, firstParagraphStyle.Font.Size);
Assert.AreEqual(Color.Empty.ToArgb(), firstParagraphStyle.Font.Color.ToArgb());

Смотрите также