我正在使用Chapter和Section对象创建一个PDF文档,所以我得到了漂亮的树形结构书签,这很棒,但我也想在章节和章节标题中应用“keep with next”,以便后面的第一段标题不会被推到标题的单独页面。
我这样做是通过使用我挂起的段落定义每个部分:
void AddSection(Section parentSection, string newSectionTitle)
{
m_heading = new Paragraph(new Chunk(newSectionTitle));
m_section = parentSection.AddSection(indentation, m_heading);
}
然后当我将第一个块添加到该部分时,我将其添加到该标题:
void AddTextToSection(string text)
{
if (m_heading != null)
{
m_heading.Add(new Chunk("\n"));
m_heading.Add(new Chunk(text));
m_heading = null;
}
else
{
m_section.Add(new Chunk(text));
}
}
除非书签包含第一段标题PLUS,否则效果很好。
有没有办法告诉章节或章节它应该在文档正文中显示文本X,但是使用文本Y定义书签?
答案 0 :(得分:0)
结果Section有一个名为BookmarkTitle的属性,如果设置,则指定将用于书签标题的文本。
所以在我创建Section之后,在开始向它添加文本之前(通过我的AddTextToSection()函数),我从m_section.Title.Chunks中提取文本并将其设置为m_section.BookmarkTitle。