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# Discussion :

Imprimer en mode console


Sujet :

C#

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 4
    Points : 5
    Points
    5
    Par défaut Imprimer en mode console
    Bonjour,

    je voulais savoir si il existe en C#, une instruction pour pouvoir imprimer un document et/ou une série de ligne dans un programme console.

    Merci de vos réponse à l'avance.

  2. #2
    Membre du Club Avatar de emiscool
    Profil pro
    architecte logiciel
    Inscrit en
    Octobre 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : architecte logiciel

    Informations forums :
    Inscription : Octobre 2006
    Messages : 45
    Points : 51
    Points
    51
    Par défaut
    ci-dessous un exmple pour imprimer un fichier txt sous une application console:

    class printerClass
    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
    62
    63
    64
    65
    66
    67
    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Drawing;
    using System.IO;
    using System.Drawing.Printing;
     
    namespace ConsoleApplication1
    {
        class printerClass
        {
            private StreamReader streamToPrint;
            private Font printFont;
     
     
            public void printDoc()
            {
                streamToPrint = new StreamReader
                      ("C:\\toto.txt");
                try
                {
                    printFont = new Font("Arial", 10);
                    PrintDocument pd = new PrintDocument();
                    pd.PrintPage += new PrintPageEventHandler
                       (this.pd_PrintPage);
                    pd.Print();
                }
                finally
                {
                    streamToPrint.Close();
                }
            }
     
            private void pd_PrintPage(object sender, PrintPageEventArgs ev)
            {
                float linesPerPage = 0;
                float yPos = 0;
                int count = 0;
                float leftMargin = ev.MarginBounds.Left;
                float topMargin = ev.MarginBounds.Top;
                string line = null;
     
                // Calculate the number of lines per page.
                linesPerPage = ev.MarginBounds.Height /
                   printFont.GetHeight(ev.Graphics);
     
                // Print each line of the file.
                while (count < linesPerPage &&
                   ((line = streamToPrint.ReadLine()) != null))
                {
                    yPos = topMargin + (count *
                       printFont.GetHeight(ev.Graphics));
                    ev.Graphics.DrawString(line, printFont, Brushes.Black,
                       leftMargin, yPos, new StringFormat());
                    count++;
                }
     
                // If more lines exist, print another page.
                if (line != null)
                    ev.HasMorePages = true;
                else
                    ev.HasMorePages = false;
            }
     
     
        }
    }
    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
    using System;
    using System.Collections.Generic;
    using System.Text;
     
    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                printerClass pt = new printerClass();
                pt.printDoc();
            }
        }
    }

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 4
    Points : 5
    Points
    5
    Par défaut Merci
    Merci pour l'information, mais quand je le compile (le programme), il m'indique quatre erreurs.

    Erreur 1 Le type ou le nom d'espace de noms 'Drawing' n'existe pas dans l'espace de noms 'System' (une référence d'assembly est-elle manquante*?) C:\Documents and Settings\Denise\Local Settings\Application Data\Temporary Projects\ConsoleApplication1\printerClass.cs 4 14 ConsoleApplication1
    Erreur 2 Le type ou le nom d'espace de noms 'Drawing' n'existe pas dans l'espace de noms 'System' (une référence d'assembly est-elle manquante*?) C:\Documents and Settings\Denise\Local Settings\Application Data\Temporary Projects\ConsoleApplication1\printerClass.cs 6 14 ConsoleApplication1
    Erreur 3 Le type ou le nom d'espace de noms 'Font' est introuvable (une directive using ou une référence d'assembly est-elle manquante*?) C:\Documents and Settings\Denise\Local Settings\Application Data\Temporary Projects\ConsoleApplication1\printerClass.cs 13 17 ConsoleApplication1
    Erreur 4 Le type ou le nom d'espace de noms 'PrintPageEventArgs' est introuvable (une directive using ou une référence d'assembly est-elle manquante*?) C:\Documents and Settings\Denise\Local Settings\Application Data\Temporary Projects\ConsoleApplication1\printerClass.cs 34 50 ConsoleApplication1
    Merci de me répondre.

    P.S. J'utilise Virtuel Studio 2008.

  4. #4
    Membre émérite Avatar de meziantou
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 223
    Points : 2 439
    Points
    2 439
    Par défaut
    Il faut que tu ajoutes une référence sur la dll System.Drawing

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Mises à jour des paquetages en mode console
    Par Memnoch31 dans le forum Debian
    Réponses: 6
    Dernier message: 16/05/2004, 16h30
  2. Des couleurs en mode console
    Par davcha dans le forum MFC
    Réponses: 3
    Dernier message: 08/05/2004, 14h37
  3. Mode console par défaut
    Par sekiryou dans le forum Administration système
    Réponses: 5
    Dernier message: 05/03/2004, 06h38
  4. Mode console et MFC ??
    Par G3G3 dans le forum MFC
    Réponses: 7
    Dernier message: 20/02/2004, 17h49
  5. Editeur en mode console
    Par logramme dans le forum C
    Réponses: 5
    Dernier message: 11/06/2002, 13h23

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