Question

Lorsque je clique pour imprimer une facture dans mon panneau d'administration magento, il télécharge un fichier entre 900K et 1.3MB (la variation semble aléatoire, je ne vois pas une raison pour cela). Ceci est une facture très simple avec peut-être 1 -. 6 articles en ligne sur, donc rien qui devrait faire prendre plus 100K ou si maximale

Y at-il des polices intégrées?

pourrait-il quelque chose sur le Serverside?

Y at-il un tweak simple que je peux faire pour le réduire?

Je sais que la large bande moderne, etc, il ne compte pas vraiment, mais il semble un peu inutile.

Était-ce utile?

La solution

En effet, les polices incorporées sont responsables de la taille du fichier.

Si vous remplacez la police avec un construit en un, la taille du fichier pour une facture simple, descend à environ 4 Ko.

Pour ce faire, il devient un désordre de peu. Vous avez besoin de réécrire les classes s'étendant de Mage_Sales_Model_Order_Pdf_Abstract et Mage_Sales_Model_Order_Pdf_Items_Abstract

Ensuite, remplacer tous les appels à

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

avec

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

Les polices intégré vous pouvez choisir sont:

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

Il y a beaucoup d'extensions qui font cela pour vous, par exemple https://github.com/firegento/firegento-pdf ( Magento Connect ) utilise le construit en FONT_HELVETICA.
L'extension Firegento_Pdf rend la personnalisation de plus en plus de pleasent du PDF cet égard par la voie (plus, le look de PDF par défaut de plus agréable déjà).

Autres conseils

Ceci est l'une de ces secousses poings-à-la-ciel-et-yell- "MAGENTO!" des moments. Il est à cause de cette ******* police LinLibertine qui obtient incrustée. Voir:

La modification de cette police est, l'OMI, l'un des rares cas d'utilisation justifiables des remplacements locaux du pool de code des classes de base. Je préfère cette approche à une réécriture de chaque classe PDF ventes « appropriée » juste dans le but de remettre à zéro la police, car elle viole DRY.

Il travaille pour moi !!

  

Ce bug semble se produire pour moi sur Magento installe sur PHP 5.4 et au-dessus.

Modifier

abstract public function __construct();

à

abstract public function __construct($filePath);
Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top