Page 2 of 3

Re: Особенность с альтернативными пробелами

PostPosted: Tue Feb 07, 2012 9:59 pm
by Novikov
А, я в UTF-8 перевел все, ибо жалко просто так выкидывать место :)

Re: Особенность с альтернативными пробелами

PostPosted: Wed Feb 08, 2012 12:27 am
by ikm
Давайте не будем мешать кодировки и коды символов Unicode. Символ U+00A0 кодируется одним байтом A0 в кодировке ISO-8859-1, двумя байтами - A0 00 - в кодировке UTF-16LE, и последовательностью C2 A0 - в UTF-8.

Re: Особенность с альтернативными пробелами

PostPosted: Wed Feb 08, 2012 12:45 am
by Novikov
Ну я там приложил файл, вы смотрите сами, где встал символ с кодом A0 :) Символ стоит перед словами "good food".

Re: Особенность с альтернативными пробелами

PostPosted: Wed Feb 08, 2012 12:54 am
by ikm
В какой кодировке ваш файл?

Re: Особенность с альтернативными пробелами

PostPosted: Wed Feb 08, 2012 1:06 am
by Novikov
UTF-8 с BOM же. У Вас редактор что-то другое показывает?

Re: Особенность с альтернативными пробелами

PostPosted: Wed Feb 08, 2012 1:12 am
by ikm
Прекрасно. Какой последовательностью байтов кодируется символ U+00A0 в UTF-8?

Re: Особенность с альтернативными пробелами

PostPosted: Wed Feb 08, 2012 2:08 am
by Novikov
Я неправильно выразился, видимо. Не символ с кодом A0, а байт со значением A0. Как правильно -- Вам виднее, вы программист.

Re: Особенность с альтернативными пробелами

PostPosted: Wed Feb 08, 2012 6:58 am
by ikm
О том и речь, что в UTF-8 байт A0 вовсе не означает символ A0. Более того, этот байт вообще не может идти лидирующим в UTF-8 последовательности. Поэтому ваш файл с примером - битый. И именно поэтому GD не может его прочитать.

Re: Особенность с альтернативными пробелами

PostPosted: Wed Feb 08, 2012 7:18 am
by alleo
Кстати, в японском (соответственно и в китайском) тексте есть еще один вид пробела с кодом U+3000. Так как все иероглифы одинаковой ширины, то и пробел должен быть такой же. Я думаю его тоже было бы неплохо учитывать.

Re: Особенность с альтернативными пробелами

PostPosted: Wed Feb 08, 2012 7:25 am
by ikm
Он учитывается. Однако он не может выступать в качестве отделителя тел статей от заголовков - как уже упоминалось, для этого можно использовать только обычный пробел или обычный таб.