Bonjour,
Il y a déjà quelques mois je m'était intéressé à un problème analogue
quoique plus vaste à savoir changer toutes les propriétés d'impression
sans passer par la boîte de dialogue.
Mac : la solution est relativement simple pour certaines
caractéristiques. En fait il y en a deux :
a) utiliser des "declare" et les fonctions d'impression d'OSX ( de
mémoire GetOrientation et SetOrientation) mais cela impose de récupérer
l'adresse de la "page" d'impression ( toujours à l'aide de "declare")
b) dans le cas de l'orientation : récupérer (c'est facile) la chaîne
"PrinterSetup.setupString", changer dans la ligne adéquate
l'orientation (0/1) et recharger la nouvelle chaîne. Attention :
vérifiez que dans ce processus, les dimensions de la page ont bien été
permutées (toujours en examinant la nouvelle chaîne
"PrinterSetup.SetupString" . Lors des essais que j'avais faits, cela
semblait géré automatiquement (par OSX ou RB je ne sais pas) . Voir
aussi la documentation de PrinterSetup.SetupString
PC : je n'ai pas trouvé de solution et j'ai renoncé à me plonger dans
les arcanes de windows. De plus dans les versions de Windows que j'ai
testées ou faites tester (98, 2000, XP) je n'ai jamais retrouvé une
quelconque référence à l'orientation dans le setupstring. Si vous
trouvez cela m'intéresse
Cordialement
Alain Legarçon
Le 20 févr. 07, à 11:57, Jean-Francois TORACCA a écrit :
* j’aimerais changer l’orientation du papier (paysage ou portrait) sans
afficher la boit de dialogue “MyPrinter.PageSetupDialog”
|