我正在使用ABCPDF.net生成PDF页面。我们的连字系统有问题。
例如,如果我们使用
添加包含长词的文本doc.AddText("This is a Verylongwordwhichdoesntfit");
并且Rect太小了,我们得到:
这是一个非常漫长的事 rdwhichdoesntfit。
我现在的问题是: 我可以控制它开始新线的位置。让它在长和字之间打破。 我可以告诉它在休息之前使用 - 像这样吗?
这是一个非常漫长的事 rdwhichdoesntfit。
非常感谢。
答案 0 :(得分:0)
答案 1 :(得分:0)
首先,.AddText()
根本不存在连字符的可能性。您必须切换到.AddHtml()
。
其次,不,abcpdf根本没有关于连字符的情报;它可以被告知在某些字符(默认为空格)之后断行,但它不知道英语单词或音节。
请参阅http://www.websupergoo.com/helppdfnet/source/3-concepts/b-htmlstyles.htm#stylerun(在该链接中搜索canBreakAfter
)
如果您能够编辑文本,则可以使用软连字符
http://www.websupergoo.com/helppdfnet/source/3-concepts/b-htmlstyles.htm#stylerun," Chars"的最后一行节
如果您需要对连字符进行精确控制,可以使用软连字符 -
­
。这个字符是不可见的,表示可以合理地破坏一大块文本的点。
例如,您使用此命令,它可能会在­
出现的任何地方中断:
doc.AddHtml("This is a Very­long­word­which­doesnt­fit");
但是,即使这不会在休息时添加可见的连字符,我也不会这么想。