На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
В этом разделе можно создавать темы, которые относятся к поколению 32-битных компиляторов.
Здесь решаются вопросы портирования кода из старого доброго Турбо Паскаля в FPC, TMT, VP, GPC компиляторы, а также особенностей программирования на них для Windows/Linux и других ОС.
Указывайте тип компилятора, его версию, а также платформу (Windows/Linux/..) компиляции, другими словами, Target.
Модераторы: volvo877
  
> Отображение html страниц
    Всем привет!
    Здесь http://www.homepg.ru/index.php?option=com_content&task=view&id=23&Itemid=38 прочитал, как можно в Лазарусе реализовать вывод html страниц. Мой вопрос заключается в том, почему инструкция
    ExpandedWrap disabled
        AssignFile(FHandle, ExtractFilePath(Application.ExeName)+'1.html');
        AssignFile(FHandle2, ExtractFilePath(Application.ExeName)+'2.html');
        Reset(FHandle);
        Rewrite(FHandle2);
        while not(eof(FHandle)) do begin
              Readln(FHandle,s);
              Writeln(FHandle2,SysToUTF8(s));
        end;
        CloseFile(FHandle);
        CloseFile(FHandle2);

    не переводит страницу в UTF-8.
    Страница моя в кодировке windows-1251 и компонент IpHtmlPanel1 без перекодировки вместо русских букв выводит перечеркнутые квадратики. После программной перекодировки, описанной в статье, вместо букв стали вопросительные знаки. Но, когда я с помощью Quanta+ перекодировал страницу в UTF-8, русские буквы стали выводиться нормально.
    Вопрос: как правильно построить код, чтобы программно переводить кодировку символов?

    Добавлено
    У меня в Убунте системная кодировка UTF-8. Таким образом функция SysToUTF8(s) и не работает. Нашел здесь http://translate.google.com/translate?hl=ru&langpair=en|ru&u=http://www.lazarus.freepascal.org/index.php%3Ftopic%3D9017.0 это:
    ExpandedWrap disabled
      procedure TForm2.ZQuery1Field2GetText(Sender: TField; var aText: string;
        DisplayText: Boolean);
       begin
         aText := CP1251ToUTF8(Sender.AsString);
       end;

    Но Лазарус ругается на CP1251ToUTF8. Где найти информацию про функции в Лазарусе...
    Сообщение отредактировано: alexsa -
      Погуглив полдня, нашел, что отвечает за это модуль LConvEncoding, который нужно подключить к проекту.
      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
      0 пользователей:


      Рейтинг@Mail.ru
      [ Script execution time: 0,0530 ]   [ 16 queries used ]   [ Generated: 27.04.24, 18:42 GMT ]