Задать вопрос
prolisk
@prolisk
Верстая. Криво.

Как исправить проблему с кодировкой при рисовании картинок на php?

Рисую картинку на php, но не могу решить проблему с кодировкой для рус.символов.
Пытался вот так:
1) в заголовке хедер (смешно, для картинки, но пытался - не помогло).
header ("Content-type: image/png; charset='utf-8'");

2) для запроса с базы данных:
mysql_set_charset('utf-8');
3) и функцией iconv:
$rust = iconv('windows-1251', 'UTF-8', 'мой красивый код');

или
$rust = iconv('cp1251', 'UTF-8', 'мой красивый код');

или
$rust = iconv('cp1250', 'UTF-8', 'мой красивый код');


По отдельности, все вместе, и частями добавлял - проблема не решилась :(
Подскажите, куда копать...
спасибо.
  • Вопрос задан
  • 188 просмотров
Подписаться 1 Оценить 5 комментариев
Решения вопроса 1
Wolfnsex
@Wolfnsex Куратор тега PHP
Если не хочешь быть первым - не вставай в очередь!
Андрей: ну... если верить документации, то там сказано следующее:
font Может принимать значения 1, 2, 3, 4, 5 для встроенных шрифтов в кодировке latin2

Я думаю, можно не объяснять, чем нам это грозит? :))

С учётом
если никаких шрифтов не привязываю?
текст нужно не "кодировать" (изменять ему кодировку), а скорее делать транслитерацию, т.к. кодировка latin2, как мне думается, букв русского алфавита в себе не содержит.

Либо, другой вариант, опять таки, из документации
любому из ваших собственных идентификаторов шрифтов, зарегистрированных с помощью imageloadfont()
- это загружать шрифт, который уже содержит нужные символы соотв.

Или, пользоваться функцией imagettftext...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
Если у вас комплексная проблема, не надо ее пытаться решить сразу целиком. Решайте все по шагам.
Сначала проверьте default_charset в php.ini, потом проверьте какая кодировка у таблицы, потом кодировку соединения, кароче по шагам, не торопясь.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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