6

我不知道如何摆脱添加段落时自动生成的书签:

Paragraph inicio = document.LastSection.AddParagraph();
inicio.Style = "Heading1";
inicio.AddSpace(110);
inicio.AddText("Factura nº");
inicio.AddText(facturaPat.FacturaN + "/" + DateTime.Now.Year);
inicio.Format.SpaceAfter = Unit.FromCentimeter(2);
inicio.Format.SpaceBefore = Unit.FromCentimeter(0.7);

风格是:

style = document.Styles["Heading1"];
style.Font.Name = "Arial";
style.Font.Size = 10.5;
style.Font.Bold = true;
style.Font.Color = Colors.Black;
style.ParagraphFormat.PageBreakBefore = false;

我正在使用的“文档”:

Document document = new Document();
...
PdfDocumentRenderer pdfRenderer = new PdfDocumentRenderer(unicode, embedding);
pdfRenderer.Document = document;
            // Layout and render document to PDF 
pdfRenderer.RenderDocument();

如果有人能告诉我在打开 pdf 时没有书签的情况下我能做些什么来生成所需的内容,那就太好了(我没有找到解决这个问题的方法)。

谢谢

4

1 回答 1

5

为设置了 OutlineLevel(即预定义的标题样式)的段落创建书签。
如果您创建自己的样式,它们将不会自动创建书签条目。

或者,您可以清除单个段落或所有标题样式的 OutlineLevel。

下面是为段落创建书签的示例代码:

paragraph = sectionToc.AddParagraph();
paragraph.Format.OutlineLevel = OutlineLevel.Level2;

将 OutlineLevel 设置为 BodyText 以避免为标题添加书签:

paragraph = sectionToc.AddParagraph();
paragraph.Format.OutlineLevel = OutlineLevel.BodyText;

最好创建一个新样式(例如“Heading1WithoutBookmark”)并为该样式设置 OutlineLevel(以避免为每个段落设置它)。

于 2011-12-31T18:29:17.467 回答