Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire : Cours JavaScript, FAQ JavaScript, Toutes les FAQ JavaScript et Sources JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/11/2011, 09h44   #1
Invité de passage
 
Inscription : avril 2009
Messages : 23
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 23
Points : 2
Points : 2
Par défaut Graph en javascript et export PDF

Bonjour à tous,

J'ai cherché une réponse à mon problème dans plusieurs forums mais je n'ai pas trouvé de réponse concluante (ou gratuite) pour le résoudre.

L'explication est simple:

Je génère une page web en php dans laquelle j'affiche 2 ou 3 graphiques générés en JavaScript via la librairie graphique HighCharts.

Le problème et que je voudrais simplement exporter les graphiques ainsi que le reste des informations se trouvant sur la page, au format PDF...

Sauf que voilà, les graphiques étant générés en PDF...Je ne vois pas du tout comment faire...

Merci d'avance pour votre aide et vos conseils (ou vos redirections vers un sujet adéquate qui m'aurait échappé )!

Bonne journée!
Crhys est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2011, 11h15   #2
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 064
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 064
Points : 45 190
Points : 45 190
Jquery propose un plguin jqplot
parcontre pour la génération du PDF il faudra passer par un langage serveur.
php par exemple avec la lib HTML2PDF
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2011, 13h09   #3
Invité de passage
 
Inscription : avril 2009
Messages : 23
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 23
Points : 2
Points : 2
Pour jqplot, j'utilise déjà HighChart et je ne peux pas changer sur ce point.

EN utilisant HTML2PDF je n'ai pas réussi à trouver comment générer un pdf avec les images de mes graphiques fait en javascript
Crhys est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2011, 13h12   #4
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 064
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 064
Points : 45 190
Points : 45 190
ben il faut passer le innerHTML généré
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2011, 09h13   #5
Invité de passage
 
Inscription : avril 2009
Messages : 23
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 23
Points : 2
Points : 2
Bon, on va y aller par étapes, et vous allez m'aider :p
Je débute en web, je m'y confronte pour la première fois dans un nouveau projet en tant que contrat pro.

alors, j'ai une page html, dans laquelle se trouve le div suivante :

Code :
1
2
3
4
5
6
 
<div id="block22"><p style="color:white"> <!-- Repartition par base --> <u> </u> :</p> 
		<?php
            dessineRepartitionFT($_POST['choix_indicateur']);//Dessine le graph avec highCharts
		?>
</div>
(il y a autre chose dans la div mais je fais le ménage pour que ce soit le plus simple possible!)

La méthode dessineRepartitionFT contient le code javascript pour générer le graph.

Donc...Si j'utilise HTML2PDF pour générer un pdf de la page est avoir le graphique, comment je dois procéder? (innerHTML je vois ce que c'est mais je vois pas trop comment l'utiliser)
Crhys est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2011, 09h19   #6
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 064
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 064
Points : 45 190
Points : 45 190
Citation:
et vous allez m'aider
Un ordre ? un souhait ?
Les mots magiques sont où ?

"S'il vous plait " ça te dit quelque chose ?

Tout fout le camp ma brave dame !!


dessineRepartitionFT($_POST['choix_indicateur']) doit générer le code html sous forme de string
il suffit donc de passer ce string à HTML2PDF
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2011, 09h23   #7
Invité de passage
 
Inscription : avril 2009
Messages : 23
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 23
Points : 2
Points : 2
Ok bon je vais chercher :p

Pour le "et vous allez m'aider :p" bien évidemment que c'est un ordre!

Non c'est juste dans la continuité de la discussion! Mais merci d'être si assidus à mon post spaceFrog
Crhys est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2011, 09h28   #8
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 064
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 064
Points : 45 190
Points : 45 190
Ceci étant
<div id="block22"><p style="color:white"> <!-- Repartition par base --> <u> </u> :</p>cette balise fermant p toute seule ... elle fait quoi là ?
__________________
Ma page Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2011, 11h45   #9
Rédacteur
 
Avatar de danielhagnoul
 
Homme Daniel Hagnoul
Étudiant perpétuel
Inscription : février 2009
Messages : 3 221
Détails du profil
Informations personnelles :
Nom : Homme Daniel Hagnoul
Âge : 61
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant perpétuel
Secteur : Enseignement

Informations forums :
Inscription : février 2009
Messages : 3 221
Points : 6 767
Points : 6 767
Bonjour

Si vous pouvez afficher vos informations (graphiques et textes) dans une page web, il suffit dans le navigateur de demander l'impression de la page dans PDFCreator par exemple (http://www.pdfforge.org/).
__________________

FAQ jQuery

Mon cahier d’exercices sur jQuery & Co

Si un message vous a aidé ou vous semble pertinent, votez pour lui !
danielhagnoul est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2011, 16h07   #10
Invité de passage
 
Inscription : avril 2009
Messages : 23
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 23
Points : 2
Points : 2
@Daniel : C'est une solution que j'avais envisagé, mais compte tenu de mes besoin je ne peux pas passer par cette solution! L'idéal pour moi serait d'avoir un bouton dans la page qui lance la génération du pdf.

Bon si j'ai bien suivi ce que tu m'as dit SpaceFrog, voici un petit exemple que j'ai essayé de mettre en oeuvre et qui (évidement) ne fonctionne pas

j'ai deux variables php :

Code :
1
2
3
4
5
6
7
8
9
 
$content = "
                <page>
                    <div id=\"container\">
	               <h1>Test de JavaScript 3</h1><br>
                    </div>
                </page>          
                ";
$script = "...";
ma variable $script est une chaine de caractère contenant mon code javascript pour générer le graphique.

je fais ensuite cela :

Code :
1
2
3
4
5
6
7
8
9
10
 
try
	{
		$html2pdf = new HTML2PDF('P','A4','fr', false, 'ISO-8859-15');
		$html2pdf->writeHTML($content, isset($_GET['vuehtml']));
		$html2pdf->pdf->IncludeJS($script);
                ob_clean();
		$html2pdf->Output('test.pdf');
	}
	catch(HTML2PDF_exception $e) { echo $e; }
Mais malheuresement je n'ai pas un bon résultat, seulement un pdf avec marqué "Test de JavaScript 3".

Il y a surement quelque chose que je n'ai pas saisie

Merci d'avance pour votre aide!
Crhys est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2011, 20h43   #11
Rédacteur
 
Avatar de danielhagnoul
 
Homme Daniel Hagnoul
Étudiant perpétuel
Inscription : février 2009
Messages : 3 221
Détails du profil
Informations personnelles :
Nom : Homme Daniel Hagnoul
Âge : 61
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant perpétuel
Secteur : Enseignement

Informations forums :
Inscription : février 2009
Messages : 3 221
Points : 6 767
Points : 6 767
Bonsoir

Au clic sur un bouton ? Il y a beaucoup de solutions disponibles (http://fr.pdf24.org/plugins.html), par exemple PDF API. (http://fr.pdf24.org/javascript-pdf-api.html)
__________________

FAQ jQuery

Mon cahier d’exercices sur jQuery & Co

Si un message vous a aidé ou vous semble pertinent, votez pour lui !
danielhagnoul est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h31.


 
 
 
 
Partenaires

Hébergement Web