Impression du contenu d'un string sur une imprimante

morganroux Messages postés 10 Date d'inscription lundi 14 juin 2004 Statut Membre Dernière intervention 23 février 2006 - 20 févr. 2006 à 12:13
morganroux Messages postés 10 Date d'inscription lundi 14 juin 2004 Statut Membre Dernière intervention 23 février 2006 - 21 févr. 2006 à 09:41
Je suis en train de développer une appli en C++ qui est sous forme de boite de dialogue MFC qui doit imprimer un string sur une imprimante à étiquette.
Mon problème c'est que malgrés des recherches sur ce site je n'est pas trouvé de solution pour réaliser cette fonction.

Quelques renseignement:
-Je connais le nom de mon imprimante.
-Je ne souhaite pas afficher de boite de dialogue, impression directe.
-Mon texte à imprimer est contenu dans un CString.
J'ai trouvé ca qui me permet de choisir le config mais je ne sais pas comment imprimer avec après :

CPrint Dialog dlg(TRUE);
if (dlg.DoModal() == IDOK)
HDC Imprimante = dlg.CreatePrinterDC();

Merci d'avance de votre aide

3 réponses

racpp Messages postés 1909 Date d'inscription vendredi 18 juin 2004 Statut Modérateur Dernière intervention 14 novembre 2014 17
20 févr. 2006 à 13:51
Salut,

Je n'ai pas l'habitude de travailler avec les MFC, mais voici en gros ce qu'il faut faire:

1- Obtenir le HDC de l'imprimante:

char buffer[200];

ULONG size=200;

GetDefaultPrinter(buffer,&size);// Obtenir le nom de l'imprimante par défaut

HDC PrinterDC=CreateDC (0,buffer, 0, 0) ; // Créer un HDC pour cette imprimante



2- Imprimer le texte:

DOCINFO di;

memset(&di, 0, sizeof(DOCINFO));

di.cbSize = sizeof(DOCINFO);

di.lpszDocName = "mettre un nom ici";// pour le job d'impression

StartDoc(PrinterDC, &di);

StartPage(PrinterDC);

TextOut(PrinterDC,0,0,"texte à imprimer",15);// Utilise ton string ici

EndPage(PrinterDC);

EndDoc(PrinterDC);



3- Détruire le HDC de l'imprimante:

DeleteDC(PrinterDC);



Je pense que tu peux utiliser directement le nom de ton imprimante coome 2eme paramètre de CreateDC();

Je pense aussi que ce code API est facilement adaptable pour compiler sous MFC.
0
morganroux Messages postés 10 Date d'inscription lundi 14 juin 2004 Statut Membre Dernière intervention 23 février 2006
20 févr. 2006 à 18:44
Merci beaucoup. J'adore ce forum je teste ca demain.
0
morganroux Messages postés 10 Date d'inscription lundi 14 juin 2004 Statut Membre Dernière intervention 23 février 2006
21 févr. 2006 à 09:41
Ca marche nikel sans aucune modif.
Merci beaucoup !!!
0
Rejoignez-nous