我正在寻找一个在C#中执行文本断字的示例项目。理想情况下,这将源自TeX断字算法或类似算法。目前我只需要英文,但未来可能需要其他语言。有人看到过类似的东西吗? 背景:我计划在使用CoreText的MonoTouch项目中包含它。
我在https://github.com/alkozko/NHyphenator发现了一个Knuth-Liang断字算法的C#实现,看起来很不错。但是目前存在两个缺点: 它不能直接加载TeX断字模式文件(但添加支持似乎很容易)。 源代码适用哪种许可证尚不清楚。
显然,唐纳德·克努斯的算法非常优秀。虽然现在没有 C#实现,但您是否考虑将另一种实现转换为 C#?(例如,您可以将相当接近 C#的 Java 实现进行转换) 另一个选项是使用更简单的实现,可以在StackOverflow上这个答案中找到。
\hyphenation{}
的内容复制到hyph-***.hyp.txt
文件中,将\patterns{}
的内容复制到hyph-***.pat.txt
文件中。嗯...建立一个解析器并不需要太多工作... - NoOne