За последние 24 часа нас посетил 18371 программист и 1647 роботов. Сейчас ищут 1728 программистов ...

latexrender и кириллица

Тема в разделе "Решения, алгоритмы", создана пользователем Роман Подрезов, 28 авг 2011.

  1. Роман Подрезов

    Роман Подрезов Активный пользователь

    С нами с:
    28 авг 2011
    Сообщения:
    1
    Симпатии:
    0
    Изначально кириллица отображалась латинскими символами:

    такой код
    Код (Text):
    1. [tex]K = {{U{вых}}\over{U{вх}}}=1+{{R2}\over{R1}}[/tex]
    прорисовывался так

    http://sharepix.ru/1265499928

    После исправления в файле class.latexrender.php (исправил кодировку) поменяв в функции эти строки:
    Код (Text):
    1.  
    2.    function wrap_formula($latex_formula) {
    3.        $string  = "\documentclass[".$this->_font_size."pt]{".$this->_latexclass."}\n";
    4.        $string .= "\usepackage[latin1]{inputenc}\n";
    5.        $string .= "\usepackage{amsmath}\n";
    6.        $string .= "\usepackage{amsfonts}\n";
    7.        $string .= "\usepackage{amssymb}\n";
    8.        $string .= "\pagestyle{empty}\n";
    9.        $string .= "\begin{document}\n";
    10.        $string .= "$".$latex_formula."$\n";
    11.        $string .= "\end{document}\n";
    12.  
    13.        return $string;
    14.    }
    На эти:
    Код (Text):
    1.  
    2. function wrap_formula($latex_formula) {
    3.        $string  = "\documentclass[".$this->_font_size."pt]{".$this->_latexclass."}\n";
    4.        $string .= "\usepackage[utf8]{inputenc}\n";
    5.        $string .= "\usepackage[T2A]{fontenc}\n";
    6.        $string .= "\usepackage[english,russian]{babel}\n";
    7.        $string .= "\usepackage{amsmath}\n";
    8.        $string .= "\usepackage{amsfonts}\n";
    9.        $string .= "\usepackage{amssymb}\n";
    10.        $string .= "\usefont{T2A}{fta}{m}{sl}";
    11.        $string .= "\pagestyle{empty}\n";
    12.        $string .= "\begin{document}\n";
    13.        $string .= "$".$latex_formula."$\n";
    14.        $string .= "\end{document}\n";
    15.  
    16.        return $string;
    17.    }
    и в файле latex.php ввел изменения для отображения <img alt="....">

    Код (Text):
    1.  
    2. - $alt_latex_formula = htmlentities($latex_formula, ENT_QUOTES);
    3. + $alt_latex_formula = htmlentities($latex_formula, ENT_QUOTES,"UTF-8");
    стало показывать так:

    http://sharepix.ru/1265517z28/

    ОС: Debian 6
     
  2. SamadhiOzen

    SamadhiOzen Активный пользователь

    С нами с:
    22 сен 2011
    Сообщения:
    2
    Симпатии:
    0
    согласен, правильное решение.