MigraDoc子弹清单(孔)
在我的解决方案中,我使用PDF文件中的项目符号列表。
看起来像这样:
• Solcellepaneler kræver hverken autoriseret service eller tidskrævende vedligehold. • Solceller er støjfri, forurener ikke og har ingen bevægelige dele, hvilket mindsker service og vedligehold • Solceller kan integreres i bygningers arkitektur eller anvendes som bygningselement i form af tag, facader eller solafskærmning • Solceller har lang levetid, med en produktionsgaranti på hele 25 år • 10 kvadrameter solceller sparer ca. ½ ton CO2 om året
我想要的是 :
• Solcellepaneler kræver hverken autoriseret service eller tidskrævende vedligehold. • Solceller er støjfri, forurener ikke og har ingen bevægelige dele, hvilket mindsker service og vedligehold • Solceller kan integreres i bygningers arkitektur eller anvendes som bygningselement i form af tag, facader eller solafskærmning • Solceller har lang levetid, med en produktionsgaranti på hele 25 år • 10 kvadrameter solceller sparer ca. ½ ton CO2 om året
代码atm:
List items = new List(); items.Add("Solcellepaneler kræver hverken autoriseret service eller tidskrævende vedligehold."); items.Add("Solceller er støjfri, forurener ikke og har ingen bevægelige dele, hvilket mindsker service og vedligehold"); items.Add("Solceller kan integreres i bygningers arkitektur eller anvendes som bygningselement i form af tag, facader eller solafskærmning"); items.Add("Solceller har lang levetid, med en produktionsgaranti på hele 25 år "); items.Add("10 kvadrameter solceller sparer ca. ½ ton CO2 om året"); Style style = document.AddStyle("MyBulletList", "Normal"); style.ParagraphFormat.LeftIndent = "0.5cm"; for (int idx = 0; idx 0; listinfo.ListType = ListType.BulletList1; SolcellDummyText = HvadErSolceller.AddParagraph(items[idx]); SolcellDummyText.Style = "MyBulletList"; SolcellDummyText.Format.ListInfo = listinfo; listinfo.ContinuePreviousList = true; }
有没有办法捕捉换行事件?
只需设置MyBulletList样式的LeftIndent以匹配第一个制表位,将FirstLineIndent设置为负值以为子弹腾出空间 – 这就是全部。
为了简单起见:最低要求(假设“段落”是AddParagraph的结果):
paragraph.Format.LeftIndent = "2.5cm"; paragraph.Format.FirstLineIndent = "-0.5cm"; paragraph.Format.ListInfo.ListType = ListType.BulletList1;
以下是使用样式的示例代码(以前创建的样式,代码片段仅修改它):
style = styles["BulletList"]; style.ParagraphFormat.RightIndent = 12; style.ParagraphFormat.TabStops.ClearAll(); style.ParagraphFormat.TabStops.AddTabStop(Unit.FromCentimeter(2.5), TabAlignment.Left); style.ParagraphFormat.LeftIndent = "2.5cm"; style.ParagraphFormat.FirstLineIndent = "-0.5cm"; style.ParagraphFormat.SpaceBefore = 0; style.ParagraphFormat.SpaceAfter = 0;
如前所述:整个“技巧”是设置LeftIndent并使用负的FirstLineIndent来定位子弹。
要添加样式,请从文档中获取样式并调用:
document.Styles.AddStyle("Bulletlist", "Normal");