MigraDoc项目符号列表(孔)
本文关键字:列表 项目 符号 MigraDoc | 更新日期: 2023-09-27 18:27:10
在我的解决方案中,我使用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<string> items = new List<string>();
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 < items.Count; ++idx)
{
ListInfo listinfo = new ListInfo();
listinfo.ContinuePreviousList = 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");