Bonjour,

Je suis responsable de la maintenance d'une library assez ancienne codée en C++ sous Visual (5, 6, 2003 puis 2010).

La principale fonction a pour but d'imprimer un planning sous la forme d'une espèce de Gantt, pour cela elle utilise un DC qu'elle met à l'échelle en fonction de l'imprimante et de la taille du papier demandé.

Depuis quelques années, cette fonction ne marchait correctement que si l'imprimante (quellle que soit l'imprimante utilisée) était configurée sans spouleur (avec spouleur, l'image est de petite taille et ne prend pas la totalité de la page), je n'avais pas trouvé d'explication mais la solution consistant à configurer l'imprimante convenait aux utilisateurs.

Je viens de m'apercevoir que l'impression avec spouleur se comporte comme si l'appel à la fonction de mise à l'échelle (SetWorldTransform sur le DC) ne fonctionne pas : en imprimant avec spouleur, j'ai la même impression que sans spouleur et sans appel à SetWorldTransform.

Quel peut bien être le rapport entre SetWorldTransform et l'utilisation ou non du spouleur pour l'impression ?