0 голосов
966 просмотров

Недавно я сообщил разработчикам, что в версии 9.1 (в отличие от 8 или 9.0) строки регулярно переносятся посреди слов (хотя у нас есть пробелы между словами!). В нашем проекте используется не западная письменность (кхмерская). Интересно, есть ли у других, работающих с не западными письменностями, такая же проблема? Если да, пожалуйста, сообщите об ошибке и помогите сделать её приоритетной.

Также, если вы знаете какой-нибудь способ (хак) для исправления этого, пожалуйста, поделитесь.

Кстати, в этом отношении PT 9.1 теперь ведёт себя как Microsoft Word, который на протяжении многих лет переносил строки посреди слов в кхмерской письменности, даже когда слова разделены пробелами. (Наш язык сильно изолирующий, так что речь не идёт о длинных словах!) Интересно, изменил ли PT 9.1 способ рендеринга текста и использует ли технологию, похожую на ту, что у Microsoft? Если да, надеюсь, разработчики пересмотрят этот выбор.

Переведено машиной с языка English
Paratext от (296 очков) | 966 просмотров

2 Ответов

0 голосов
Лучший ответ

Похоже, это уже было сообщено как PTX-20833

Harfbuzz делегирует решения о переносе строк. Ранее перенос сложных связей (необходимый для кхмерского и 3 других языков) определялся с помощью uniscribe. Теперь это делается с помощью icu, что исправило перенос строк для некоторых языков. Скорее всего, это и есть причина изменения.

Переведено машиной с языка English
от [Moderator]
(2,4тыс. очков)

снова показан

hindlemail, несколько лет назад Мартин Хоскен (Martin Hosken) провёл работу по исправлению переноса строк в кхмерской письменности в LibreOffice. Я думал, что его исправление было внесено в ICU, но, возможно, исправление заключалось в том, чтобы выполнять перенос строк в LO, а не в ICU.

Переведено машиной с языка English

Я уточнил у Мартина насчёт его исправления в LibreOffice. Он сказал, что ICU не приняла его исправления, потому что он реализовал их только на C++, а им также требовалась реализация на Java.

Переведено машиной с языка English

Только что получил обновление до 9.1.104.39. Пока изменений нет – я предполагаю, что исправление не было предназначено для этого обновления? (Ранее я видел заметку о том, что исправление этого является приоритетом для следующего обновления.)

Переведено машиной с языка English

Изменение было включено в обновление 9.1.104.39, но оно не является параметром по умолчанию, так как изменение значения по умолчанию вызвало бы проблемы для других.

Если вы откроете настройки Paratext, там есть новый параметр для переноса слов в кхмерском (это единственный язык, для которого, насколько нам известно, требуется этот параметр). Если вы отметите этот параметр и перезапустите Paratext, вы должны получить желаемое поведение.

John+Wickberg
Поддержка Paratext

Переведено машиной с языка English

Я использую 9.1.104.39, отметил параметр в настройках и перезапустил Paratext, но я всё ещё вижу некоторые разорванные слова, как в выделенном здесь месте:

Переведено машиной с языка English

К сведению: Языки, использующие тайскую письменность, также имеют проблемы с разделением слов, но это всегда было так в Paratext (похоже, в отличие от кхмерской письменности, и, я думаю, лаосской, которая, казалось, была исправлена на некоторое время, чтобы не переносить). Для Print Draft это было исправлено в прошлом году, но на экране слова неправильно разделяются при переносе строк. Я думаю, что с тайской письменностью были проблемы со шрифтами, которые не позволяли исправить перенос (кроме как в Print Draft и в ptxprint), поэтому я сомневаюсь, поможет ли это исправление для кхмерского. Но нам бы очень хотелось, если оно поможет!!
Linda119

Переведено машиной с языка English

Есть ли какой-либо эффект от отметки этого параметра? (т.е. исправляет ли он что-то, но не всё?)
Пример, который использовался при исправлении этого, был:

យេហូវ៉ា
(1799,17c1,17a0,17bc,179c,17c9,17b6)

Если отметка не исправляет это, то можете ли вы попробовать следующее:

Создайте файл C:\Users\$USER\AppData\Local\ParatextGeckoPreferencesOverrides.txt
(где $USER заменяется на соответствующее имя пользователя)

и вставьте в файл эту строку:

b intl.complexLineBreaking.uniscribe true

и сохраните.

Теперь, если вы перезапустите Paratext, это что-то изменит?

Переведено машиной с языка English

Изменения кода Paratext были включены в патч, но обновленная версия движка Firefox не была включена.

Наше тестирование обычно использует другие сборки, чем патч, и в этих сборках была правильная версия Firefox.

Я буду работать над тем, чтобы включить версию Firefox в наш следующий патч, который будет отправлен на следующей неделе.

John+Wickberg

Переведено машиной с языка English
image hindlemail Developer
12 февраля

Есть ли какой-либо эффект от отметки в этом флажке? (т.е. исправляет ли он что-то, но не всё?)

Я не уверен, но, судя по письму John+Wickberg W, я предполагаю, что дальнейший поиск не имеет значения.

Пример, который использовался при исправлении этой проблемы, был следующим:

យេហូវ៉ា
(1799,17c1,17a0,17bc,179c,17c9,17b6)

Если отметка в флажке не исправляет это, то можете ли вы попробовать следующее:

Создайте файл C:\Users$USER\AppData\Local\ParatextGeckoPreferencesOverrides.txt
(где $USER заменяется на соответствующее имя пользователя)

и вставьте в файл эту строку:

b intl.complexLineBreaking.uniscribe true

и сохраните.

Теперь, если вы перезапустите Paratext, это что-то изменит?

Вставка строки “b intl.complexLineBreaking.uniscribe true”
в файл "C:\Users\LivingField\AppData\Local\ParatextGeckoPreferencesOverrides.txt”
не исправила перенос слова យេហូវ៉ា
Мы будем ждать сборки на следующей неделе с обновленным Gecko.

Переведено машиной с языка English

Вчера мой PT обновился до 9.1.104.59. После обновления перенос строк всё ещё сломан.

В выпуске 1.104.39 я уже выбрал «Khmer only: Support complex line breaks» (Только кхмерский: Поддержка сложных переносов строк). После обновления до 104.59 я снял этот параметр, перезапустил PT, снова выбрал его и снова перезапустил – всё для того, чтобы убедиться, что параметр «принят». Но безрезультатно.

Спасибо за внимание к этому! Было бы здорово иметь исправление.

Переведено машиной с языка English

Пробую с вашим проектом и 9.1.104.59, у меня, похоже, работает:

С включенным параметром:

и:

С выключенным параметром:

Я знаю, что у меня другой шрифт, чем у вас, но я не смог найти шрифт Khmer Barkaew. Я не думаю, что это имеет значение, но, возможно, стоит исключить этот вариант. (Если вы можете легко предоставить мне шрифт, я протестирую с ним).

Так что, если вы согласны, что мои скриншоты показывают ожидаемое поведение (и я не неправильно понимаю проблему), и шрифт не имеет значения, то, я думаю, стоит проверить, сработал ли процесс обновления paratext как ожидалось.

В проводнике Windows перейдите в C:\Program Files\Paratext 9\Firefox64 и щелкните правой кнопкой мыши → свойства для xul.dll. Поле Size: (Размер:) должно быть «75,891,200 bytes». Если оно не совпадает, то, вероятно, это и есть причина.

Если размер не совпадает, вы можете исправить это вручную, выполнив следующие действия:

скачайте:
https://www.nuget.org/api/v2/package/Geckofx60.64.Windows/0.18.0
переименуйте расширение загрузки в .zip

Извлеките файл: content/Firefox64/xul.dll

  1. остановите paratext.
  2. переименуйте C:\Program Files\Paratext 9\Firefox64\xul.dll в xul.dll_original
  3. скопируйте xul.dll из zip-файла в C:\Program Files\Paratext 9\Firefox64\
  4. перезапустите paratext
Переведено машиной с языка English

Файлы из загрузки исправили это для меня.

Переведено машиной с языка English

Есть ли шанс, что это можно сделать и для языков тайской письменности? Я пытался заменить xul.dll, следуя этим инструкциям, но это не помогло, слова на экране в Paratext для нашего языка на основе тайского всё ещё разделяются по строкам, поэтому, я думаю, это применимо только к кхмерскому?

Linda119

Переведено машиной с языка English

Это тоже исправило для меня. Спасибо!

Переведено машиной с языка English

Здравствуйте, Linda119,

изображение

Языки, на которые влияет этот параметр:
тайский, лаосский, тибетский, кхмерский
(Возможно, название этого параметра не лучшее. Помимо того, что он касается дополнительных языков, снятие отметки действительно поддерживает сложные переносы строк. По моему пониманию, снятая отметка более соответствует стандарту Unicode в том, как выполняются переносы строк, что может отличаться от того, как это работало раньше.)

Единственное, что делает этот параметр, — это возвращает предыдущее поведение Paratext в отношении сложных переносов строк.
Таким образом, если вы заметили желаемое изменение переноса строк при переходе с версии 9.0 на 9.1, то этот параметр позволяет вернуть старое поведение.

Переведено машиной с языка English
0 голосов

Это изменение было совершенно не намеренным. Paratext использует движок раскладки Harfbuzz от Firefox, поэтому возможно, что обновление этой системы привело к сбою.

Пожалуйста, используйте Help > Give feedback (Справка > Отправить отзыв), чтобы мы могли более внимательно изучить эту проблему.

Переведено машиной с языка English
от [Expert]
(16,7тыс. очков)

Похожие вопросы

0 голосов
1 ответ 226 просмотров
Пользователь указал, что при редактировании перевода, когда открыт обратный перевод, обратный перевод, похоже, добавляет новые ... image895 351 7.02 KB Есть какие-нибудь идеи?
MSEAIT_LT 478 задал вопрос июн 8, 2021
0 голосов
1 ответ 377 просмотров
A user is using the Khmer script for their project. They are using the Khmer Mondulkiri font. In the project text ... of how it looks in PrintDraft, U+17C9 incorrectly above letter
[Expert]
sewhite
3,3тыс.
задал вопрос апр 27, 2015
0 голосов
0 ответов 185 просмотров
Wasn't sure where to report this bug fix for the Show Project Plan Html script, found in the project Custom Tools > ... be causing the problem. Probably best to change it as well
jeffh 1,4тыс. задал вопрос май 8, 2020
0 голосов
0 ответов 179 просмотров
We would like to have feedback on My Tasks in the Paratext 9.1 beta. We want to make sure that it works ... the Give Feedback option for your feedback. Thanks! Jonathan+Robie
Jonathan Robie 448 задал вопрос сен 8, 2020
0 голосов
1 ответ 303 просмотров
I decided to work with Paratext 9.1 because of the 64-bit operating system allowance. When I do an S/R in Paratext 9.1. are the ... versions in both PT9.1. as well as in P.T. 9.0?
anon049395 128 задал вопрос сен 8, 2020
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
Dear friends, since God so loved us, we also ought to love one another.
1 John 4:11
3,051 вопросов
6,010 ответов
5,675 комментариев
2,030 пользователей