Jump to content

[РЕШЕНА] [lang] Проблема с генерацией PDF


Recommended Posts

Ну русский я и так мог делать PDF. Проблема в том что я ещё использую эстонский язык и немецкий. С этими файлами Tahoma не прописываются такие буквы как Ä,Ü,Õ,Ö в этом проблема... просто показывается A,U,O, и тд

Link to comment
Share on other sites

  • 3 weeks later...

Jevgen

Та же ситуация была и с Латышским и Литовским языком. Помогла только замена fpdf на tcpdf. Поищи на форуме, но придется поковырятся с настройками и php под свою версию.

Link to comment
Share on other sites

  • 1 month later...
почту напиши, я вот только сегодня все у себя подправил ... пришлю тебе файлы ...


Будьте добры, пришлите и мне пожалуйста нормальные файлы для корректной генерации счетов в формате PDF на русском языке. У меня преста 1.3.7
Заранее благодарю. Мой адрес zarema(at)smtp.ru
Спасибо!
Link to comment
Share on other sites

Проблема с кодировкой не решена! Почему модераторы написали что проблема решена? Не решена до сих пор! Глюк с кодировками как был, так и продолжает место быть!

Модераторам! Если есть решение готовое, то выкладывайте!

Link to comment
Share on other sites

Ни один из способов предложенных в данной теме не работает! У меня Преста 1.3.7 испробовал все что можно! И как можно! Ничего не помогает! Либо крягодябры текста, либо крокодябры валюты!

Так что ни одного метода нет решения этой проблемы из предложенных в этом теме!

Link to comment
Share on other sites

3 Помощи ждать или кричать об этом бессмысленно вас никто не услышит

Ну с этим не согласен....


Спасибо Саша за поддержку!
Link to comment
Share on other sites

  • 4 months later...

частично решил проблему шрифтов с счете залив шрифтовые файлы (предварительно созданные здесь: http://fpdf.fruit-lab.de/):

  • verdana.php;
  • verdana.z
  • verdanab.php
  • verdanab.z

в /tools/fpdf/font

в админке выбираем сp-1251, шрифт verdana

 

осталась проблема с кодировкой денежных единиц.

пишет РіСЂРЅ вместо "грн.".

способ описанный здесь http://www.prestasho...post__p__460181 не помог.

пока убрал в таблице ps_currency обозначение "грн."

 

 

версия prestashop 1.3.6

Link to comment
Share on other sites

  • 1 month later...
  • 3 weeks later...
  • 1 month later...

победил установкой tcpdf

А не подскажите ссылку, по которой ставили установку? У меня преста 1.4.4.1, и предлагаемые выше варианты для более старых версий почему-то прошли не совсем правильно. PDF счет в номальном виде и шрифты все замечательно (латышский язык), а инвойс генерирует какой-то странный - непонятного шрифта и формата.
Link to comment
Share on other sites

  • 3 weeks later...

Здравствуйте! Столкнулся с проблемой. В счете PDF магазин сам добавляет товар.

К примеру я заказываю 3 зубных пасты, а он мне еще и мыло добавляет! )))

Хотя в корзине и на почту приходит нормальный список. Хэлп!

PrestaShop™ 1.4.7.0

balea.in.ua

Link to comment
Share on other sites

Подскажите пожалуйста, какой код у значка гривны, чтобы его можно было внести в файл со шрифтом.

 

вы это серьезно?

 

http://ru.wikipedia....%B2%D0%BD%D0%B0

 

П.С. мда, не зря я видимо в вашей теме по подбору персонала отписался.

Если намек на беглое гугление в виде ссылки на википедию слишком тонкий даю прямую ссылку

http://index.minfin.com.ua/sign/?UAH

Link to comment
Share on other sites

Всем привет и Спасибо!

 

Добавление шрифта Verdana отлично сработало для prestashop 1.4.6.2

 

Остается проблема с "грн."

 

Добавить символ гривны не сложно ("грн" и "chr(980)") в classes/PDF.php:

 

В код:

static protected function convertSign($s)
{
 $arr['before'] = array('€', '£', '¥');
 $arr['after'] = array(chr(128), chr(163), chr(165));
 return str_replace($arr['before'], $arr['after'], $s);
}

Добавить:

static protected function convertSign($s)
{
 $arr['before'] = array('€', '£', '¥', 'грн');
 $arr['after'] = array(chr(128), chr(163), chr(165), chr(980));
 return str_replace($arr['before'], $arr['after'], $s);
}

 

Следующий вариант убирает как символ валюты так и "РіСЂРЅ"

static protected function convertSign($s)
{
 $arr['before'] = array('€', '£', '¥', 'грн');
 $arr['after'] = array(chr(128), chr(163), chr(165), chr('грн.'));
 return str_replace($arr['before'], $arr['after'], $s);
}

Есть идея записать вряд символы функцией chr т.е. (chr(227) chr(240) chr(237)) что в итоге даст "грн"

 

Что же все таки дописать нужно для отображения "грн." ?

 

РЕШЕНИЕ:

 

static protected function convertSign($s)
{
 $arr['before'] = array('€', '£', '¥');
 $arr['after'] = array(chr(128), chr(163), chr(165));
 return Tools::iconv('utf-8',self::encoding(),str_replace($arr['before'], $arr['after'], $s));
}

 

Спасибо Андрей и вот - ссылка на пост.

Link to comment
Share on other sites

  • 9 months later...

1.4.7

 

Cмотреть нужно в /classes/PDF.php, возможно в этом месте


/*
* display order information
*/

Надо "играться" с параметром $width

 

Уже на 1.5, так что сейчас мне не протестить..

Edited by doubleD (see edit history)
Link to comment
Share on other sites

до этого я уже дошел =) вот только значения какие-то не понятные у $width

Похоже эта часть отвечает за показ:


/* display order information
......

$pdf->Cell(55, 6, self::l('Order #').' '.sprintf('%06d', self::$order->id), 'L', 0);
$pdf->Cell(70, 6, self::l('Carrier:').($order->gift ? ' '.Tools::iconv('utf-8', self::encoding(), $carrier->name) : ''), 'L');

......

 

Изменяя значение Cell можно двигать/менять размер столбцов. Например это сделает в шапке первый уже, а средний шире

$pdf->Cell(25, 6, self::l('Order #').' '.sprintf('%06d', self::$order->id), 'L', 0);
$pdf->Cell(90, 6, self::l('Carrier:').($order->gift ? ' '.Tools::iconv('utf-8', self::encoding(), $carrier->name) : ''), 'L');

 

 

Ну и так надо будет изменить во всех местах...

Link to comment
Share on other sites

фигня какая-то =) я это уже делал =(, может где-то я тупанул...

Тестил на 1.4.6.2.

Уже как год тоже надо было изменить ширину, но так как клиенты эти счета вообще редко открывают, откладывал на "потом".

Работает без проблем...

Link to comment
Share on other sites

  • 2 months later...

Здравствуйте. Подскажите пожалуйста, сделал все как указано в этом топике. При оформлении нового заказа, выдает ошибку:

FPDF error: Unsupported font type: TrueTypeUnicode

 

версия 1.4.9

Link to comment
Share on other sites

  • 4 weeks later...
  • 11 months later...

 

 

Здравствуйте. Подскажите пожалуйста, сделал все как указано в этом топике. При оформлении нового заказа, выдает ошибку:

FPDF error: Unsupported font type: TrueTypeUnicode

 

версия 1.4.9

ПРИСОЕДИНЯЮСЬ!!! Версия 1.4.5.1. КАК РЕШИТЬ ПРОБЛЕМУ?

Link to comment
Share on other sites

Ой... У меня ошибка FPDF error: Some data has already been output, can't send PDF file

В файле PDF.php сделала

static protected function convertSign($s)
{
$arr['before'] = array('€', '£', '¥');
$arr['after'] = array(chr(128), chr(163), chr(165));
return Tools::iconv('utf-8',self::encoding(),str_replace($arr['before'], $arr['after'], $s));
}

Выставила шрифт Verdana.Tools.php не трогала. Счета отображаются без ошибок, как нужно, но в личном кабинете пользователя ошибка. Как исправить?

Link to comment
Share on other sites

×
×
  • Create New...