счета PDF для 1.5.2: вопросы вместо русских букв

Автор golfp-96, 27 октября 2012, 20:46:33

« назад - далее »

golfp-96

Интернет облазил, настройки шрифтов для счетов в админке не нашел. Как быть?

DarinSr


golfp-96

Ответ на форуме смотрел. Эти решения мне не помогли, о чем писал.
Решение:
в файле classes/pdf/PDFGenerator.php в самом начале вместо
const DEFAULT_FONT = 'helvetica';
написать:
const DEFAULT_FONT = 'freeserif';

Виктор Демидов

Цитата: DarinSr
Нужно было на форуме поискать, тут уже обсуждали.
счет PDF
Проблема при создании PDF счета
это для версий 1.4
В prestashop 1.5 использование fpdf и tcpdf включено в стандартную сборку.
Для использования русского языка, достаточно выставить локальные настройки.

golfp-96

Локальные настройки русские устанавливал в админке, не помогало. Что конкретно надо установить и как? Хотя сейчас в принципе все работает, решение - замена шрифта (см выше), версия 1-5-2

Виталий

Цитата: golfp-96
Ответ на форуме смотрел. Эти решения мне не помогли, о чем писал.
Решение:
в файле classes/pdf/PDFGenerator.php в самом начале вместо
const DEFAULT_FONT = 'helvetica';
написать:
const DEFAULT_FONT = 'freeserif';
На форуме обсуждали замену fpdf на tcpdf и использование кодировки UTF-8 или UTF-16
Цитировать
...
- скачатьTCPDF  с  http://sourceforge.net/projects/tcpdf/files/
- распаковать, шрифты находяться в /tcpdf/fonts
- выберите файлы freesans.* и перенесите на ваш сайт в папку /prestashop/tools/tcpdf/fonts/
.....
1. Измените AdminPDF.php
$fontFiles = scandir(PS_FPDF_PATH.'font');
на
$fontFiles = scandir(PS_TCPDF_PATH.'fonts');

2. Измените PDF.php
....
Изменения нужно было вносить для prestashop версий 1.4
ЦитироватьВ prestashop 1.5 использование fpdf и tcpdf включено в стандартную сборку.
Для использования русского языка, достаточно выставить локальные настройки.
Для prestashop 1.5.0. только установить использовать шрифт  "freeserif", все остальное делать не нужно.
Для использования UTF-8 или UTF-16 (в админке нет возможности сменить кодировку для PDF), подключить шрифты "freeserif" можно 2 способами:
1. Как написано выше, изменить класс ядра
classes\pdf\PdfGenerator.php
Найти

<?php
....
const
DEFAULT_FONT = 'helvetica';

Заменить на

<?php
....
const
DEFAULT_FONT = 'freeserif';

2.  Перегрузить метод setFontForLang в классе PDFGenerator
/override/classes/pdf/PDFGenerator.php
<?php
class PDFGenerator extends PDFGeneratorCore
{
       public function
setFontForLang($iso_lang)
       {
               
$this->setFont('freeserif');
       }
}
Cоздание интернет сайтов Webstudio UwK