IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

Impression d'un TChart


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2011
    Messages : 3
    Par défaut Impression d'un TChart
    Bonjour tout le monde,
    j'ai un petit soucis pour imprimer un TChart.

    Je fais un programme pour une association qui souhaite imprimer des courbes.
    J'ai tenter de suivre le tuto de jp-blondelle mais je me suis mélangé les pinceaux.

    Dans un premier temps, j'ai réussi à obtenir une mauvaise impression en pdf mais dès que je l'envoyais sur une imprimante physique, j'avais droit à l'écran bleu et redémarrage de windows.

    Maintenant, je n'ai plus ce problème, mais je n'ai que des pages blanches.

    Où est le problème? qu'est ce que le font?
    Pouvez vous m'aider svp?

    merci d'avance pour vos réponses

    voici le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    LOGFONT lgfont;
    	Printer()->Orientation = poLandscape;
    	// Récupération des détails de la fonte dans la structure LogFont
    	GetObject(Chart1->Canvas->Font->Handle, sizeof(LOGFONT), &lgfont);
     
    /*	// Lister les imprimantes installées
    	ComboBox1->Items = Printer()->Printers;
     
    	// Definir l'imprimante par defaut
    	Printer()->PrinterIndex = ComboBox1->ItemIndex;*/
     
     
    	// Démarrage de l'impression
    	Printer()->BeginDoc();
     
    	// Tracé de la zone imprimable
    	TRect r = Rect(74, 74,Printer()->PageWidth-74, Printer()->PageHeight-74);
    	//Augmentons la taille de la fonte pour une meilleure visibilité
    	Printer()->Canvas->Font->Size = 12;
     
     
     
    	//L'impression d'un composant visuel (TForm, TDBGrid, TImage, etc ..) passe par l'obtention d'un Hdc sur ce composant avec l'API GetDC.
    	HWND hdc;
     
    	// Obtention d'un handle de device context sur l'écran
    	hdc = GetDC( NULL );
    	hdc = Chart1->Canvas->Handle;
    	r = Chart1->ClientRect;
     
     
     
    	// On utilise StretchBlt pour redimensionner la source à la taille de la destination
    	StretchBlt(Printer()->Canvas->Handle, 74, 74, Printer()->PageWidth-74, Printer()->PageHeight-74, hdc, 0, 0, Screen->Width, Screen->Height,  SRCCOPY);
    	//Chart1->Print();
    	//PrinterSetupDialog1->Execute();
     
    	//Envoi des commandes à l'imprimante
    	Printer()->EndDoc();
    	//ne pas oublier de relacher le hdc
    	ReleaseDC(Handle, hdc);
    }

  2. #2
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2011
    Messages : 3
    Par défaut
    Merci 3DArchi,
    c'est mon premier message et je ne connaissais pas les balises ni ou mettre mon message.
    c'est "code" "/code" entre [] c'est ca?

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    573
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 573
    Par défaut
    Salut , enregistres ton canvas dans un bitmap et imprimes le
    Non ?

    C est ce bouton :

  4. #4
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2011
    Messages : 3
    Par défaut
    Merci Cedni pour ta réponse.
    En effet j'avais vu cette solution, mais comme je redimensionnes le TChart pour qu'il remplisse la page, j'avais un doute.
    Ca fonctionnerais ainsi?

Discussions similaires

  1. Impression d'un TChart
    Par looping dans le forum Langage
    Réponses: 0
    Dernier message: 09/07/2008, 11h38
  2. Impression d'un TChart (graphique)
    Par Terryio dans le forum C++Builder
    Réponses: 7
    Dernier message: 05/04/2007, 13h46
  3. Aperçu avant impression avec TChart
    Par vitch8 dans le forum Delphi
    Réponses: 3
    Dernier message: 27/03/2007, 18h38
  4. Réponses: 3
    Dernier message: 25/03/2007, 21h43
  5. Problème pour mettre un TChart sur QReport pour l'impression
    Par ghan77 dans le forum Composants VCL
    Réponses: 14
    Dernier message: 25/01/2006, 13h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo