Сколько непечатных символов обычно используется? - PullRequest
1 голос
/ 27 октября 2009

При написании переводчиков для PDF, HTML и других документов нам необходимо иметь дело с различными пробельными символами и дополнительными непечатными символами. ANSI хорошо определены, но сколько других можно найти на практике? Типичным примером является кластер в ISO10646 (я думаю):

                     en space
                 em space
                   thin space
‌  ‌     ‌   ‌   zero width non-joiner
‍   ‍     ‍   ‍   zero width joiner
‎   ‎     ‎   ‎   left-to-right mark
‏   ‏     ‏   ‏   right-to-left mark

(По понятным причинам символы не появляются выше!).

Ответы [ 2 ]

2 голосов
/ 27 октября 2009

Юникод будет с нами, в возрастающем количестве, надолго. Если документ HTML или XML написан в кодировке UTF-8 в кодировке Unicode, то следует ожидать появления всех этих элементов.

В Unicode (База данных символов Unicode) следующие кодовые точки определены как пробельные символы:

U+0009–U+000D (control characters, containing Tab, CR and LF)
U+0020 SPACE
U+0085 NEL (control character next line)
U+00A0 NBSP (NO-BREAK SPACE)
U+1680 OGHAM SPACE MARK
U+180E MONGOLIAN VOWEL SEPARATOR
U+2000–U+200A (different sorts of spaces)
U+2028 LS (LINE SEPARATOR)
U+2029 PS (PARAGRAPH SEPARATOR)
U+202F NNBSP (NARROW NO-BREAK SPACE)
U+205F MMSP (MEDIUM MATHEMATICAL SPACE)
U+3000 IDEOGRAPHIC SPACE
1 голос
/ 27 октября 2009

В мире разработки есть как минимум еще один (чаще всего используется в веб-разработке)

   // non-breaking space

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

  • пробел - обычный пробел
  • в пробел
  • em пробел
  • тонкое пространство
  • пространство для волос
  • неразрывный пробел
  • неразрывное пространство фиксированной ширины
  • шестой пробел
  • четверть пространства
  • третье место
  • пунктуация
  • заполняющее пространство
  • цифра
  • ...
...