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

Windows Forms Discussion :

[c#] Impression


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de transistor49
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2005
    Messages
    184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 184
    Par défaut [c#] Impression
    Bonjour, j'essaie d'imprimer une texte box en c#, j'arrive un imprimer, mais le problème est qu'il m'imprime les deux pages que j'ai taper, sur une seul feuille.

    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
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
            private void OnPrintClick(object sender, EventArgs e)
            {
                try
                {
                    stringToPrint = new StringReader(TbTexteNew.Text);
                    pdPrint.Document = PDDocument;
     
                    try
                    {
                        DialogResult result = pdPrint.ShowDialog();
                        printFont = new Font("Arial", 10);
                        PDDocument.PrintPage += new PrintPageEventHandler(this.pd_PrintPage);
     
                        // If the result is OK then print the document.
                        if (result == DialogResult.OK)
                        {
                            PDDocument.Print();
                        }
                    }
                    finally
                    {
                        stringToPrint.Close();
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
     
            private void pd_PrintPage(object sender, PrintPageEventArgs ev)
            {
                float linesPerPage = 0;
                float yPos = 0;
                float count = 0;
                float countColonne=0;
                float count2=0;
                float colonnePerLigne=80;
                float leftMargin = ev.MarginBounds.Left;
                float topMargin = ev.MarginBounds.Top;
                string line = null ;
                printFont.Size = 10;
     
                linesPerPage = ev.MarginBounds.Height / printFont.GetHeight(ev.Graphics);
     
                while (count < linesPerPage && ((line = stringToPrint.ReadLine()) != null))
                {
                    yPos = topMargin + (count * printFont.GetHeight(ev.Graphics));
                    ev.Graphics.DrawString(line, printFont, Brushes.Black, leftMargin, yPos, new StringFormat());
                    count++;
                }
     
                if (line == null)
                {
                    ev.HasMorePages = false;
                }
                else
                {
                    ev.HasMorePages = true;
                }
            }
    est-ce que quelqu'un peut m dire ce qu'il cloche dans mon code?

  2. #2
    Membre confirmé Avatar de transistor49
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2005
    Messages
    184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 184
    Par défaut
    Personne, ne peut m'aiguiller sur le fait que sa m'imprime deux page de texte sur une seul page papier?

  3. #3
    Membre éclairé
    Avatar de frechy
    Inscrit en
    Novembre 2004
    Messages
    343
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Novembre 2004
    Messages : 343
    Par défaut
    Je supose que le problème vient d'ici....

    linesPerPage = ev.MarginBounds.Height / printFont.GetHeight(ev.Graphics);
    Il faut surement compter égallement l'interligne, mais je ne sais pas comment.

    Personelement, j'ai toujours utilisé ceci : http://support.microsoft.com/kb/812425/en-us

    En esperant que ca puisse t'aider

  4. #4
    Membre confirmé Avatar de transistor49
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2005
    Messages
    184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 184
    Par défaut
    pas facile facile a comprendre, mais merci quand même.

  5. #5
    Membre éclairé Avatar de anto
    Inscrit en
    Juin 2003
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 86
    Par défaut
    t as réussi ou pas?

  6. #6
    Membre confirmé Avatar de transistor49
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2005
    Messages
    184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 184
    Par défaut
    Ben non, je suis toujours bloqué au même point!!!
    j'aimerais bien avancé!

Discussions similaires

  1. [CR][VB6] Impression d'un état depuis VB
    Par sda dans le forum SDK
    Réponses: 3
    Dernier message: 06/02/2007, 17h27
  2. Quick Report et impression de données hors BDD
    Par gRRosminet dans le forum C++Builder
    Réponses: 8
    Dernier message: 19/08/2002, 09h47
  3. Probleme d'impression avec la méthode TForm->Print()
    Par Kid Icarus dans le forum C++Builder
    Réponses: 13
    Dernier message: 31/07/2002, 14h26
  4. Impression d'image bmp
    Par Invité dans le forum Langage
    Réponses: 6
    Dernier message: 18/07/2002, 09h38
  5. Problème d'impression
    Par IngBen dans le forum C++Builder
    Réponses: 7
    Dernier message: 22/05/2002, 11h37

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