4

问题:给定一个字符串(可以是不同的语言),我们必须将其连字符。

我尝试了什么:hypenator-j但这似乎只适用于英语,我不确定如何连接其他语言,找不到不同语言的免费 tex 文件。

我们有哪些选项可以解决 Java 中不同语言的断字问题?

4

2 回答 2

4

hyphenator-j 或分叉变体的实现能够使用原始的.tex连字符表。

可以找到此表

  • 在您的本地机器上,如果您已经安装了 TeX 环境,例如MiKTeX. 在这种情况下,.tex断字表可以在\tex\generic\hyphen
  • TeX用户组的网页和对应的Git:这里

一旦您获得了.tex您感兴趣的内容,您就可以使用提供的 API 来加载它们hyphenator-j

于 2016-03-14T13:24:10.087 回答
2

如果有足够的时间和意志力,您可以根据这篇论文自己实施断字,例如http://www.tug.org/docs/liang/。不过,自己实现断字并不是一件容易的事,因此您可能需要选择替代解决方案。

连字符.js

是的,这是一个 javascript 项目。但是,可以从 java 调用 javascript 函数。您可以在此处找到更多信息:http: //docs.oracle.com/javase/6/docs/technotes/guides/scripting/programmer_guide/index.html

这提供了对多种语言的支持。

刮字典

许多词典提供断字规则。您可以在网上找到这些内容,但需要进行一些搜索。接下来,您可以抓取这些以获取连字符规则,但这可能是比从 Java 调用 javascript 更难看的解决方法。

无论哪种方式,断字都不是一个简单的问题,自己实现它似乎是一个相当烦人的任务,所以也许 javascript 项目是你最好的选择。或者,您可以基于 hyphenator.js 实现您自己的 Java 实现。至少那时你不会从头开始。

于 2015-12-08T08:07:38.763 回答