Я потратил много, много дней, борясь с проблемами пробелов в письмах Юго-Восточной Азии. Я НИКОГДА не видел издательской среды, в которой пробелы фиксированной ширины, такие как THIN SPACE \u2009 или EM SPACE \u2003, давали бы правильный вывод при использовании между словами или фразами. Вот несколько конкретных проблем, которые я наблюдал:
- Тогда как обычный SPACE \u0020 исчезает в конце строки, когда предшествующее слово достигает правого поля, пробел фиксированной ширины либо требует достаточно места, чтобы появиться на строке до правого поля, либо ширина пробела тянет предшествующее слово на следующую строку, либо пробел фиксированной ширины переносится на следующую строку один, фактически создавая отступ следующей строки текста.
- Алгоритмы переноса строк отдают предпочтение переносу по SPACE выше, чем по пробелам фиксированной ширины, что приводит к появлению некрасивых абзацев с полустроками текста.
- Пробел фиксированной ширины нельзя растянуть или сжать, чтобы достичь полностью выровненных по ширине полей или красиво сбалансированных абзацев. Для этих целей работает только обычный символ SPACE.
- Пробел фиксированной ширины может выглядеть странно, когда пользователь копирует текст из приложения и вставляет его в мессенджер и т. д.
- Клавиатуры телефонов не могут вводить пробел фиксированной ширины, поэтому поиск нескольких слов в приложении для телефона будет неудачным.
Решение, которое я нашел, — использовать обычные символы SPACE \u0020 как для узких, так и для широких пробелов. В PTXprint я использую SPACE+ZWSP+SPACE, чтобы получить двойной (или тройной) пробел на разрывах фраз. В SAB я использую два или три пробела, со стилем, содержащим CSS white-space: pre-wrap; , чтобы предотвратить свертывание HTML-движком нескольких пробелов в один. В любом случае, будь то PTXprint, SAB или Indesign, я могу применить пользовательские стили к пробелу, чтобы сделать его шире или уже.
Использование пробелов фиксированной ширины в Paratext в основном работает нормально, хотя список пунктуации сбивается с толку. Однако мое предпочтение — избегать использования пробелов фиксированной ширины и в Paratext, потому что их трудно увидеть. Лучше использовать видимый символ (например, запятую на разрывах фраз), а затем изменить символ на более широкий или более узкий пробел при публикации.
Как указал mnjames, SAB почти так же гибок, как PTXprint, когда дело доходит до реализации правил изменений, поэтому вы должны быть в состоянии получить идеальный вывод в любой из программ, если у вас есть рабочий шрифт.
I've spent many, many days wrestling with space issues in Southeast Asian scripts. I have NEVER seen a publishing environment in which fixed width spaces such as THIN SPACE \u2009 or EM SPACE \u2003 produce correct output when used between words or phrases. Here are a few specific problems I have observed:
- Whereas a normal SPACE \u0020 will disappear at the end of a line when the preceding word reaches all the way to the margin, a fixed width space will either require sufficient space to appear on the line before the right margin, or the width of the space will pull the preceding word down to the next line, or the fixed width space will wrap to the next line alone, effectively indenting the next line of text.
- Line break algorithms prioritize breaking at a SPACE higher than at fixed width spaces, producing ugly paragraphs with half-lines of text.
- A fixed width space cannot be stretched or shrunk in order to achieve fully justified margins or nicely balanced paragraphs. Only a normal SPACE character works for these things.
- A fixed width space may appear strangely when the user copy-pastes from an app into a messenger, etc.
- Phone keyboards can't type a fixed width space so a multi-word search in a phone app will fail.
The solution that I have found is to use normal SPACE \u0020 characters for both narrow and wide spaces. In PTXprint I use SPACE+ZWSP+SPACE to get a double (or triple) space at phrase breaks. In SAB I use two or three space characters, with a style containing CSS white-space: pre-wrap; to prevent the HTML engine from collapsing multiple spaces into a single space. In either PTXprint, SAB, or Indesign I can apply custom styles to the space to make it either wider or narrower.
Using fixed-width spaces within Paratext works mostly OK, though the punctuation inventory gets confused. My preference, however, is to avoid using fixed-width spaces in Paratext too because they're difficult to see. It's better to use a visible character (e.g. a comma at phrase breaks) and then change the character to a wider or narrower space at publication time.
As mnjames indicated, SAB is almost as flexible as PTXprint when it comes to implementing change rules, so you should be able to get perfect output in either program, if you have a working font.