Dessiner une image dans un printdocument

choukri175 Messages postés 87 Date d'inscription dimanche 22 octobre 2006 Statut Membre Dernière intervention 22 février 2008 - 3 janv. 2007 à 16:15
soussous78 Messages postés 47 Date d'inscription mardi 21 novembre 2006 Statut Membre Dernière intervention 5 novembre 2016 - 22 août 2008 à 02:15
Salut,

je voudrais déssiner une image dans mon printdocument, alors j'ai procédé comme suit :

dans l'événement printpage de printdocument, j'ai mis les deux instructions suivantes :

1.  Image myImage=Image.FromFile("chemin complet");// déclaration d'une image à partir de son chemin 


2.  e.Graphics.DrawImage(myImage,280,45);// j'ai dessiné l'image myImage à l'emplacement (x,y)=(280,45)

tout cela ne m'a pas déssiné mon image : j'ai une erreur au niveau de la 1ère instruction. L'erreur est la suivante :

Une exception non gérée s'est produite dans votre application. Si vous cliquez sur Continuer, l'application ignore cette erreur et essaie de continuer. Si vous cliquez sur Quitter, l'application s'arrête immédiatement. 

Je sais pas comment régler ce problème qui consiste à mon avis à bien spécifier le chemin de mon image : j'ai mis le '\' pour ignorer l'\' du chemin mais le problème persiste.

Comment résoudre ce problème?

Merci d'avance.

Cordialement.

 

9 réponses

cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
3 janv. 2007 à 16:26
Salut,
C'est certainement une erreur dans le path. Indique le avec un '@' comme ceci :
string myPath = @"C:\Test\blabla\test.jpg";

<hr size="2" />-Blog-
0
choukri175 Messages postés 87 Date d'inscription dimanche 22 octobre 2006 Statut Membre Dernière intervention 22 février 2008
3 janv. 2007 à 19:36
Merci,

C'est une erreur dans le path.

Pour remédier au problème de path ('\', ...), j'ai procédé comme suit :

J'ai mis mon image dans le dossier debug de mon projet. comme ça, dans le path je mets tt simplement le nom de mon image avec l'extension.

Et ça a marché.

Cordialement. 
0
choukri175 Messages postés 87 Date d'inscription dimanche 22 octobre 2006 Statut Membre Dernière intervention 22 février 2008
3 janv. 2007 à 19:45
Toujours avec printdocument,

Lorsque mon printdocument comporte des données qui nécessitent plus qu'une page d'impression, alors dans mon 'apérçu avant impression' il y a seulement une seule page.

Est ce que c'est un problème de la variable 'hasmorepages' ?Si oui comment devrais-je procéder? sinon où est le problème?

Merci.

 
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
3 janv. 2007 à 20:09
Tu peux jeter un oeil sur ce tuto que j'ai fait il y a quelques temps...

<hr size="2" />-Blog-
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Jackboy Messages postés 757 Date d'inscription vendredi 7 septembre 2001 Statut Membre Dernière intervention 19 juin 2008
5 janv. 2007 à 22:18
J'ai le meme trouble que toi, mais moi le probleme viens autrement, je fais un install et je dois recuperer le path ou le client a installer l'application, ici tout est beau je le transmet a mon appli du genre avec @"C:\Program Files\monappli\test.exe" mais il ne trouve pas mon fichier. Le fait de mettre un @ devant double t'il les \ dans c#, car sinon impossible de trouver C:\\Program Files\\monappli\\test.exe !!!
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
5 janv. 2007 à 22:32
@"C:\test.txt" = "C:\\test.txt"
Dans cet exemple, le @ permet de faire comprendre au compilo qu'il ne faut pas interpréter le '\' comme un caractère d'échappement.
Autrement dit, @"C:\test.txt" = "C:\\test.txt" est vu comme "C:\test.txt".

C:\test.txt est vu comme "C:[TAB]est.txt" car \t est équivant à une tabulation.

<hr size="2" />-Blog-
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
6 janv. 2007 à 17:37
"dans le path je mets tt simplement le nom de mon image avec l'extension."
Ce qui nous donne un chemin relatif au répertoire courant de l'application, et non pas relatif au dossier de l'executable.
Si le répertoire courant change (OpenFileDialog par exemple), tout tes chemins sont invalides.
Voir Application.StartupPath, Application.ExecutablePath et associés. (avec un soupçon de Path.Combine, naturellement)

/*
coq
MVP Visual C#
CoqBlog
*/
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
6 janv. 2007 à 18:07
naturellement... lol

<hr size="2" />-Blog-
0
soussous78 Messages postés 47 Date d'inscription mardi 21 novembre 2006 Statut Membre Dernière intervention 5 novembre 2016
22 août 2008 à 02:15
j'ai une petite question... Est-il possible de mettre une image dans un printdocument avant de lancer l'impression?
Cela me permettrait de faire un appercu avant impression (PrintPreviewDialog).
Merci de vos réponses.
0
Rejoignez-nous