Ответ на форуме смотрел. Эти решения мне не помогли, о чем писал.
Решение:
в файле 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');
}
}