Расстановка переносов для разных языков с помощью java

Проблема: если есть строка (которая может быть на другом языке), мы должны расставить ее через дефис.

Что я пробовал: hypenator-j, но, похоже, это работает только для английского я не знаю, как расставить переносы на другие языки, не смог найти бесплатные текстовые файлы для разных языков.

Какие варианты расстановки переносов для разных языков в Java у нас есть?


person vach    schedule 08.12.2015    source источник
comment
Вы искали таблицы расстановки переносов TeX   -  person atao    schedule 08.12.2015


Ответы (2)


Реализация hyphenator-j или разветвленного варианта может использовать исходные .tex таблицы переносов.

Эти таблицы можно найти

  • На вашем локальном компьютере, если вы уже установили среду TeX, такую ​​как MiKTeX. В этом случае .tex таблицы расстановки переносов можно найти в \tex\generic\hyphen
  • На веб-странице группы пользователей TeX и соответствующем Git: здесь

Получив интересующие вас .tex, вы можете загрузить их с помощью API, предоставленного hyphenator-j.

person rzo1    schedule 14.03.2016

При наличии достаточного количества времени и силы воли вы могли бы самостоятельно реализовать расстановку переносов на основе этого тезиса, например http://www.tug.org/docs/liang/. Тем не менее, реализовать расстановку переносов самостоятельно — непростая задача, поэтому вы можете выбрать альтернативные решения.

Гифенатор.js

Да, это проект javascript. Однако можно вызывать функции javascript из java. Дополнительную информацию об этом можно найти здесь: http://docs.oracle.com/javase/6/docs/technotes/guides/scripting/programmer_guide/index.html.

Это обеспечивает поддержку большого количества языков.

Очистить словари

Многие словари предлагают правила переноса. Вы можете найти их в Интернете, хотя это потребует некоторого поиска. Затем вы можете очистить их для правил расстановки переносов, но это может быть более уродливым обходным путем, чем вызов javascript из Java.

В любом случае, расстановка переносов — непростая проблема, реализация ее самостоятельно кажется довольно раздражающей задачей, поэтому, возможно, проект javascript — ваш лучший выбор. ИЛИ вы можете реализовать свою собственную реализацию Java на основе hyphenator.js. По крайней мере, вы бы тогда не начинали с нуля.

person Dylan Meeus    schedule 08.12.2015