Работа с хипениране

Понякога е необходимо да се използва тирета за по-компактно подреждане на текста в документ. В същото време е важно да се разбере, че спецификите на думата тиреиране могат да се различават за всеки език.

В момента тиретата не се използват толкова често, колкото преди, особено в английските текстове. Въпреки това, използването на тази функция може да има сериозно въздействие върху потребителските документи готварство засяга оформлението и в резултат на това появата на изходните файлове, например в PDF формат.

За правилното разделяне на думите се използват специфични за езика речници за тирета. Aspose.Words използва напреднали алгоритми, за да работи с такива речници и ви позволява да получите същите тирета като в Microsoft Word.

Речници за тирета

Тъй като различните езици използват различни норми и правила за думата тиреиране, оптималното решение за правилното тиреиране е да се използват специални речници. Aspose.Words използва речници на OpenOffice.

За проверка на правописа OpenOffice използва Hunspell библиотека, което е обобщение на алгоритъма за тиреиране на TeX. Този алгоритъм позволява автоматична нестандартна тиретация чрез конкурентни стандартни и потребителски модели на тиреиране. Hunspell използва Хифен за тирета.

Хифенация Алгоритъм

Aspose.Words Приложения алгоритъмът за тиреиране TeX и могат да използват отново речниците на OpenOffice.

Следните характеристики на Aspose.Words алгоритмите следва да се вземат предвид:

  • Параметри на разстоянието за хипениране (LEFTHYPHENMIN, RAVEHYPHENMIN, COMПиглефифенмин, COMPOUDRIGHTHYPHENMIN) се игнорират. Aspose.Words използва собствен набор от параметри за разстояние в зависимост от режима на съвместимост на документите.
  • Алгоритъмът за тиреиране в Aspose.Words Поддръжка композитна тиретация. Все пак, Aspose.Words разделя характер последователности, съдържащи смесени азбучни и не-алфабетични символи в части само на азбуката (думи) и ги хифенира отделно. Имайте предвид, че Microsoft Word логиката на тиреиране на сложни думи зависи от режима на съвместимост на документите.
  • Алгоритъмът за тиреиране в Aspose.Words не прилага нестандартна тиретация. Нестандартните модели са игнорирани.

Зареждане на дневници за тирета

За да използвате функцията за тиреиране, първо регистрирате речник за тиреиране. Следният пример за код показва как да се заредят речници за тиреиране за определени езици от файл:

Следният пример с код показва как се зареждат речниците с тирета за посочения език от поток:

Като алтернатива на предварително записаните речници за тирета, е възможно да се регистрират само изискваните речници за тиретата по заявка. За да се постигне това, прилагане на IHyphenationCallback интерфейс и използване на статично обаждане Callback.

Следният пример с код показва как да се приложи IHyphenationCallback интерфейс:

Въздействие на хипнозата върху подреждането

Когато разбивате текст на редове, Aspose.Words проверява всяка дума дали тя се вписва изцяло в текущата линия. Ако друга дума е твърде дълга, за да се побере в края на линията, по подразбиране Aspose.Words премества го към началото на следващата линия, вместо да го хипнотизира.

Въпреки това, функцията за тиреиране може да се използва в Aspose.Words да се вмъкнат тирета в думи, за да се премахнат пропуските в обоснования текст или да се поддържа еднаква дължина в тесни колони. Това очевидно може да засегне броя на редовете и следователно броя на страниците. С други думи, използването на функцията за тиреиране засяга оформлението на документа.

Хифениране и обосновка (H&J)

Microsoft Word има сложна логика за избор на точка на прекъсване, ако текстът е оправдан и се активира тиреиране. Накратко, Microsoft Word може да предпочитат да свиват или простират пространства, за да се избегне линия тиреиране. Най-вероятно тази логика се основава на Статията на Кнут.

Aspose.Words прилага собствен H&J алгоритъм, който дава същия резултат като Microsoft Word и осигурява идентичен пробив в изходния документ.

Вижте също