Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
Непойму почему неработает... UTF-8 |

20.07.2009, 04:37
|
|
Постоянный
Регистрация: 23.05.2005
Сообщений: 617
Провел на форуме: 1262031
Репутация:
71
|
|
Непойму почему неработает... UTF-8
Вот собсвенно подрубленый класс RTF который выводит все русские буквы спец буквы ..
<?php
require_once("../rtf/Rtf.php");
//Fonts
$times12 = new Font(12, 'Times new Roman');
//Rtf document
$rtf = new Rtf();
//Section
$sect = &$rtf->addSection();
$null = $null;
//Write utf-8 encoded text.
//Text is from file. But you can use another resouce: db, sockets and other
$sect->writeText(file_get_contents("../sources/utf8.txt"), $times12, $null);
$rtf->sendRtf();
?>
Он работает хорошо. Когда читает файл utf8.txt
А если я делаю так.
$sect->writeText('SPECIAL SYMBOLS', $times12, $null);
То мне выводит пустые квадратики вмето специальных букв с ударением и т д ... Почему так ? не как нельзя что бы он перекодировал не из файла ? т.е или из переменной передаваемой файлу или даже просто вписанный тест.. не катит.. незнаю где проблема..
|
|
|

20.07.2009, 04:58
|
|
Banned
Регистрация: 24.08.2006
Сообщений: 483
Провел на форуме: 3895065
Репутация:
1112
|
|
откуда выводишь? ... ааа тхт, кодировка на сервере какая\?
файл тхт когда сохраняешь, в опция уникод ставь
|
|
|

20.07.2009, 15:05
|
|
Постоянный
Регистрация: 23.05.2005
Сообщений: 617
Провел на форуме: 1262031
Репутация:
71
|
|
Вот нашео решение.
Junior Member Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору<?php
require_once("../rtf/Rtf.php");
$rtf = new Rtf();
$sect = &$rtf->addSection();
$sect->writeText(iconv("CP1251", "UTF-8",'<i>Привет <b>Мир</b></i>.'), new Font(12), new ParFormat('center'));
$rtf->sendRtf('Hello_World');
?>
Это работает с iconv
Но как мне вставить правильно в строку ?
т.е сюда как правильно вставить iconv ?
$table->writeToCell(22, 2, ''.$laurea.'', new Font(),$null, new ParFormat());
|
|
|

20.07.2009, 15:22
|
|
Постоянный
Регистрация: 23.05.2005
Сообщений: 617
Провел на форуме: 1262031
Репутация:
71
|
|
up люди хелп..
|
|
|

20.07.2009, 21:33
|
|
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме: 3178262
Репутация:
389
|
|
PHP код:
<?php
$laurea_cp1251 = '<i>Привет <b>Мир</b></i>.'; //Текст переменной
$laurea_utf = iconv("CP1251", "UTF-8", $laurea_cp1251); //Преобразование кодировок
$table->writeToCell(22, 2, $laurea, new Font(),$null, new ParFormat()); //Запись в файловый формат
?>
это извращение, вместо этого нужно использовать только переменную $laurea
P.S. Для мелких вопросов по PHP есть отдельная тема - http://forum.antichat.ru/lastpostinthread40896.html
P.S.S. Прочти пожалуйста хотябы первые 20 страничек книги о PHP, чтобы знать представление как всё работает.... это поможет ответить на многие вопросы
|
|
|

22.07.2009, 04:24
|
|
Постоянный
Регистрация: 23.05.2005
Сообщений: 617
Провел на форуме: 1262031
Репутация:
71
|
|
Написал.
$table->writeToCell(26,1, ''.iconv("iso-8859-1", "UTF-8",$info.''), new Font(12), new ParFormat('center'));
ВЫВОДИТ ⠹ ⠹ квадратики пустые.
А если пишу так
$sect->writeText(iconv("iso-8859-1", "UTF-8",'$info'), new Font(12), new ParFormat('center'));
то выводит то что нужно... ничего не пойму ? вроде все правильно пишу все работает а 1 варианте выводит квадратики 2 варианте выводит что что нужно.
|
|
|

22.07.2009, 04:42
|
|
Постоянный
Регистрация: 23.05.2005
Сообщений: 617
Провел на форуме: 1262031
Репутация:
71
|
|
Я так понял что на это дейсвует $sect->writeText и $table->writeToCell
Но не уверен если это можно как то сдлеать рабочим.
Зделаю баннер графику только помогите .. заплатить немогу на данный момент нету вэб мани. Будут в сентябре. буду платить. (
|
|
|

22.07.2009, 16:33
|
|
Постоянный
Регистрация: 23.05.2005
Сообщений: 617
Провел на форуме: 1262031
Репутация:
71
|
|
UP
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|