2011-09-19 3 views
3

J'utilise Zend Framework et les classes héritées à savoir My_Pdf (que je suis arrivé de sourceforge et de la bibliothèque de My_Pdf est utilisé pour dessiner des tableaux) pour créer un fichier PDF à partir de la base de données. Lorsque je crée un fichier PDF sans les contours de tableau, il fonctionne bien et génère des PDF. Mais quand j'essaye de dessiner le tableau correspondant aux données, j'ai eu une erreur,PDF avec Zend Framework

Fatal error: Declaration of My_Pdf_Page::drawImage() must be compatible with that of Zend_Pdf_Canvas_Interface::drawImage() in C:\Users\TranceServe\Zend\workspaces\DefaultWorkspace7\Crushed_PLanet\library\My\Pdf\Page.php on line 369 

S'il vous plaît me guider quoi faire.

+0

Vous n'avez accepté aucune réponse à ce jour! Veuillez accepter la meilleure réponse à chacune de vos questions ... – markus

Répondre

3

Je suis venu moi-même sur ce problème. Je n'ai pas testé en 1.11.3, mais en 1.11.0. Tout ce que vous devez faire est de changer votre drawImage méthode dans My_Pdf_Page est spécifier l'image $ argument comme étant du type d'objet « Zend_Pdf_Resource_Image »:

public function drawImage(Zend_Pdf_Resource_Image $image,$x1,$y1,$width,$height,$inContentArea=true){ 
+0

J'ai essayé, mais celui-ci a maintenant reçu une autre erreur sur la ligne où le script a essayé de créer des lignes et l'erreur est cols..The ** "Erreur fatale: taille maximale autorisée pour la mémoire de 134217728 octets épuisé (essayé de allouer 62 octets) "** –

+0

@lan Thnx cela fonctionne –

+0

qu'en est-il de le forcer? Est-ce que quelqu'un l'a déjà fait? –

5

Cela signifie que le plan d'une classe dérivateur est pas identique à une classe supérieure dans l'héritage hiearchy.

Et cela signifie très probablement que la bibliothèque PDF n'a pas été mis à jour pour fonctionner avec la dernière version du Zend Framework.

vous utilisez la version Zend Framework 1.11.3 MAIS ...

Très évidemment la bibliothèque que vous essayez d'utiliser a été écrit pour Zend Framework 1.8 (première boîte), il n'a pas été mis à jour depuis mai 2009 (deuxième case) et donc personne ne le télécharge de nos jours (troisième case).

Leçon: Connaissez vos outils!

+0

Vous avez raison. J'utilise zend 8.0 et zend framework 1.11.3. Mais je ne sais pas pour quelle version cette bibliothèque PDF est écrite. Comme il n'y avait pas de description sur le site –

+4

Que voulez-vous dire par Zend 8. Il n'y a pas une telle chose. Zend est une entreprise. Il n'y a pas de 8ème version de cette société. – markus

+1

Postez un lien vers cette bibliothèque dans votre question! – markus