Работа с заголовками в PDF

Применение стиля нумерации в заголовках

Заголовки являются важными частями любого документа. Авторы всегда стараются сделать заголовки более выразительными и значимыми для читателей. Если в документе несколько заголовков, у автора есть несколько вариантов организации этих заголовков. Один из наиболее распространенных подходов к организации заголовков - это написание заголовков в стиле нумерации.

Aspose.PDF для .NET предлагает множество заранее определенных стилей нумерации. Эти предопределенные стили нумерации хранятся в перечислении, NumberingStyle. Предопределенные значения перечисления NumberingStyle и их описания приведены ниже:

Типы заголовков Описание
NumeralsArabic Арабский тип, например, 1,1.1,…
NumeralsRomanUppercase Римский верхний тип, например, I,I.II, …
NumeralsRomanLowercase Римский нижний тип, например, i,i.ii, …
LettersUppercase Английский верхний тип, например, A,A.B, …
LettersLowercase Английский нижний тип, например, a,a.b, …
Свойство Style класса Aspose.PDF.Heading используется для установки стилей нумерации заголовков.
Свойство Style класса Aspose.PDF.Heading используется для установки стилей нумерации заголовков.
Рисунок: Предопределенные стили нумерации
Исходный код для получения результатов, показанных на приведенном выше рисунке, приведен ниже в примере.

Следующий фрагмент кода также работает с новым графическим интерфейсом Aspose.Drawing.

// Путь к директории документов.
string dataDir = RunExamples.GetDataDir_AsposePdf_Headings();

Document pdfDoc = new Document();
pdfDoc.PageInfo.Width = 612.0;
pdfDoc.PageInfo.Height = 792.0;
pdfDoc.PageInfo.Margin = new Aspose.Pdf.MarginInfo();
pdfDoc.PageInfo.Margin.Left = 72;
pdfDoc.PageInfo.Margin.Right = 72;
pdfDoc.PageInfo.Margin.Top = 72;
pdfDoc.PageInfo.Margin.Bottom = 72;

Aspose.Pdf.Page pdfPage = pdfDoc.Pages.Add();
pdfPage.PageInfo.Width = 612.0;
pdfPage.PageInfo.Height = 792.0;
pdfPage.PageInfo.Margin = new Aspose.Pdf.MarginInfo();
pdfPage.PageInfo.Margin.Left = 72;
pdfPage.PageInfo.Margin.Right = 72;
pdfPage.PageInfo.Margin.Top = 72;
pdfPage.PageInfo.Margin.Bottom = 72;

Aspose.Pdf.FloatingBox floatBox = new Aspose.Pdf.FloatingBox();
floatBox.Margin = pdfPage.PageInfo.Margin;

pdfPage.Paragraphs.Add(floatBox);

TextFragment textFragment = new TextFragment();
TextSegment segment = new TextSegment();

Aspose.Pdf.Heading heading = new Aspose.Pdf.Heading(1);
heading.IsInList = true;
heading.StartNumber = 1;
heading.Text = "Список 1";
heading.Style = NumberingStyle.NumeralsRomanLowercase;
heading.IsAutoSequence = true;

floatBox.Paragraphs.Add(heading);

Aspose.Pdf.Heading heading2 = new Aspose.Pdf.Heading(1);
heading2.IsInList = true;
heading2.StartNumber = 13;
heading2.Text = "Список 2";
heading2.Style = NumberingStyle.NumeralsRomanLowercase;
heading2.IsAutoSequence = true;

floatBox.Paragraphs.Add(heading2);

Aspose.Pdf.Heading heading3 = new Aspose.Pdf.Heading(2);
heading3.IsInList = true;
heading3.StartNumber = 1;
heading3.Text = "стоимость имущества на дату вступления плана в силу, которое будет распределено по плану в связи с каждым разрешенным";
heading3.Style = NumberingStyle.LettersLowercase;
heading3.IsAutoSequence = true;

floatBox.Paragraphs.Add(heading3);
dataDir = dataDir + "ApplyNumberStyle_out.pdf";
pdfDoc.Save(dataDir);