Вопрос

Когда я нажимаю, чтобы распечатать счет на моей панели администратора Magento, он загружает файл между 900K и 1,3 МБ (вариация кажется случайной, я не вижу причин для него). Это очень простой счета -фактуры, возможно, с 1 - 6 позициями, поэтому ничего, что не должно занять более 100 тысяч или около того максимум.

Есть ли встроенные шрифты?

Может ли это быть что -то на сервере?

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

Я знаю, что с современной широкополосной и т. Д. Это не имеет значения, но это кажется немного ненужным.

Это было полезно?

Решение

Действительно, встроенные шрифты отвечают за размер файла.

Если вы замените шрифт встроенным в одном, размер файла для простого счета -фактуру снижается примерно до 4 КБ.

Для этого это становится немного грязным. Вам нужно переписать классы, простирающиеся от Mage_Sales_Model_Order_Pdf_Abstract а также Mage_Sales_Model_Order_Pdf_Items_Abstract

Затем замените все вызовы на

$font = Zend_Pdf_Font::fontWithPath(Mage::getBaseDir() . '/lib/LinLibertineFont/LinLibertine_Re-4.4.1.ttf');

с

$font = Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA);

Встроенные шрифты, которые вы можете выбрать, являются:

Zend_Pdf_Font::FONT_COURIER
Zend_Pdf_Font::FONT_COURIER_BOLD
Zend_Pdf_Font::FONT_COURIER_OBLIQUE
Zend_Pdf_Font::FONT_COURIER_ITALIC
Zend_Pdf_Font::FONT_COURIER_BOLD_OBLIQUE
Zend_Pdf_Font::FONT_COURIER_BOLD_ITALIC
Zend_Pdf_Font::FONT_HELVETICA
Zend_Pdf_Font::FONT_HELVETICA_BOLD
Zend_Pdf_Font::FONT_HELVETICA_OBLIQUE
Zend_Pdf_Font::FONT_HELVETICA_ITALIC
Zend_Pdf_Font::FONT_HELVETICA_BOLD_OBLIQUE
Zend_Pdf_Font::FONT_HELVETICA_BOLD_ITALIC
Zend_Pdf_Font::FONT_SYMBOL
Zend_Pdf_Font::FONT_TIMES_ROMAN (or Zend_Pdf_Font::FONT_TIMES)
Zend_Pdf_Font::FONT_ZAPFDINGBATS

Есть много расширений, которые делают это для вас, например, https://github.com/firegento/firegento-pdf (также на Magento Connect) использует встроенный FONT_HELVETICA.
Расширение Firegento_pdf делает настройку с более приятным PDF в более чем то, кстати, кстати (плюс, уже лучше PDF -по умолчанию).

Другие советы

Это один из тех, кто коктейль-коктейль-коктейль и жгучий-«Magento!» моменты. Это из -за того, что ******* Linlibertine шрифт, который встраивается. Видеть:

Изменение этого шрифта, IMO, один из редких оправданных вариантов использования локальных переопределений пула кодов основных классов. Я предпочитаю этот подход к «правильному» переписыванию каждого класса PDF -файлов только для сброса шрифта, поскольку он нарушает сухой.

Это работает для меня !!

Эта ошибка, по -видимому, происходит для меня на установке Magento на PHP 5.4 и выше.

Изменять

abstract public function __construct();

к

abstract public function __construct($filePath);
Лицензировано под: CC-BY-SA с атрибуция
Не связан с magento.stackexchange
scroll top