Bonjour,
Je suis en train de ma prendre la tête avec l'impression et ça commence à me gonfler. "Je vais bien, tout va bien, ..., Tout va mal"
Désolé pour ce cri de désespoir.
Bref, j'ai besoin d'un petit coup de main.
Je doit créer une impression différente que celle fournit par Microsoft qui imprime bètement la vue.
J'ai donc besoin de gérer moi même le positionnement de tout mes petites données.
J'ai créé correctement les trois fonctions fonctions important pour l'impression :
- OnBeginPrinting ( ... )
- OnPrint ( ... )
- OnEndPrinting ( ... )
J'ai même ajouté les fonctions suivantes pour gérer correctement les préparations :
- OnPreparePrinting ( ... )
- OnPrepareDC ( ... )
Voilà donc tous les petits détails. Et maintenant les trucs un peu bizarre.
Quand je suis en impression pure, j'ai le membre m_rectDraw de pInfo qui est initialisé avec la taille de page dans laquelle je peux dessiner.
Par contre, j'ai contaté un truc louche. Voici le contenu de mon Watch :
Je ne comprend pourquoi j'ai une telle différence entre la Hauteur et la Longueur. Ce qui évidement me complique la vie quand je vais mes calculs de position. Donc si quelqu'un à une explication, je serai bien preneur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 pInfo->m_rectDraw.Height ( ) = 788 pInfo->m_rectDraw.Width ( ) = 6184209
Et puis si je peux abuser de votre temps, j'ai une autre question.
Quand je suis en "aperçu avant impression", j'ai le membre m_rectDraw de pInfo qui n'est pas du tout initialisé. Mais comment veulent-ils que je calcule des coordonnées si la taille de la page n'est pas correctement initialisé. Ils sont drôle eux.
Comment puis-je faire dans ce cas pour connaitre la taille de la page ?
Merci d'avance à tous
Partager