2011-08-20 6 views
0

Je construis un site en utilisant CodeIgniter et j'utilise jQuery Visualize pour générer des graphiques. Maintenant j'ai besoin d'imprimer ces graphiques en PDF (j'utilise TCPDF maintenant) mais je ne pouvais pas trouver un moyen d'imprimer les graphiques (AFAIK jQuery Visualize utilise Ajax pour créer du canvas depuis ma table HTML donc je ne pouvais pas imprimer le HTML au format PDF).Comment imprimer jQuery Visualiser en PDF en utilisant TCPDF

J'ai trouvé ce sujet très similaire include jquery charts into pdf mais je ne veux pas capturer HTML à l'image que je vais générer de nombreux rapports au format PDF, donc je ne vais pas les voir avant (le mot « capture "me semble que j'ai besoin de le voir au navigateur d'abord).

Y a-t-il un moyen? (J'espère utiliser jQuery Visualize et TCPDF puisque j'ai déjà beaucoup travaillé sur ceux-ci, mais si vous pensez que c'est impossible, veuillez me suggérer un autre outil graphique). Je vous remercie.

+0

On dirait un duplicata http://stackoverflow.com/questions/1535958/php-data-to-chart-to-image-to-pdf – Homer6

Répondre

1

Je l'ai rencontré avec TCPDF et j'ai dû implémenter mes propres algorithmes de rendu de cartes pour le côté serveur car je ne trouvais pas un bon paquet de rendu côté serveur. Malheureusement, c'était une source fermée et je n'y ai plus accès, mais vous pouvez avoir quelques options:

  1. Essayez de tirer parti du rendu côté client, comme vous l'avez mentionné. Beaucoup d'efforts vont dans ce rendu et si vous pouvez déclencher automatiquement un navigateur, il peut utiliser ce code pour rendre l'image et ensuite placer cette image dans le pdf.
  2. Créez votre propre moteur de cartographie en PHP. Je pourrais être intéressé à vous aider comme je l'ai souvent rencontré ce (après avoir fait une fois avant déjà) et je serais intéressé à ajouter à ma bibliothèque open source (https://github.com/homer6/altumo)

espoir qui aide.

+0

Désolé pour la réponse tardive , je suis confronté à un certain délai, donc je suppose que je vais essayer le travail pour le moment, comme vous l'avez suggéré sur la première option. Merci pour votre temps et votre aide. –

+0

FYI ... PrinceXML est la meilleure alternative que j'ai trouvé à TCPDF ... il est utilisé par google et si vous pouvez obtenir une bibliothèque graphique HTML pour générer SVG, vous pouvez être capable de travailler pour répondre à vos besoins de cartographie. Gardez à l'esprit, il a un coût de licence élevé, mais ça vaut le coup si vous faites beaucoup de configurations différentes de fichiers PDF. Voir: http://www.princexml.com/doc/7.0/svg/ – Homer6

+1

Merci pour la suggestion. Malheureusement, notre budget de projet est strict. Et en raison de la courte période à venir, j'ai décidé de passer à Google Image Chart et j'ai transmis l'hyperlien de l'image à TCPDF. –

0

Le passage de l'image google semble être le seul moyen d'insérer un graphique dans TCPDF.

Quelque chose comme:

$pdf->Image("http://chart.googleapis.com/chart?cht=r&chxt=y,x&chls=4&chco=E26F1E&chs=580x510&chts=000000,20&chxr=0,0.0,100.0&chd=t:" . $percent[0] . "," . $percent[1] . "," . $percent[2] . "," . $percent[3] . "," . $percent[4] . "," . $percent[5] . "," . $percent[0] . "&chtt=Self+Assesment+Results&chxp=0,0,20,40,60,80,100&chxs=0,000000,12|1,000000,12&chxl=1:|Storage+/+Handling|Dispensing|Contamination+Control|Oil+Analysis|Oil+Sampling|Training+/+Certification&chm=s,E26F1E,0,-1,12,0|s,FFFFFF,0,-1,8,0", 90, 90, 120, 0, 'PNG'); 
+0

En effet, c'est ce que j'ai fini avec. Je cherchais un moyen d'insérer JQuery Visualize à TCPDF cependant, toujours merci pour le temps :) –

+0

J'ai trouvé un moyen pour mon application. Vous devez d'abord générer l'image puis l'exporter vers un canevas, puis l'enregistrer, j'ai choisi de l'enregistrer dans une base de données. Commencez ici: http://www.battlehorse.net/page/topics/charts/save_google_charts_as_image.html il y a du code que vous devez changer en haut avant qu'il ne fonctionne avec la dernière version .. si vous avez besoin de plus d'aide je peux T'aider. J'ai fait un processus en 2 étapes pour mon application .. l'étape 1 génère l'image étape 2 génère le pdf tirant l'image de l'étape 1 sur une base de données mySQL –

+0

Merci pour le suivi, c'est déjà fait, avec Google Chart. C'est un vieux projet et au début je cherchais un moyen d'utiliser jQuery Visualize depuis que j'aime son apparence. –

Questions connexes