Bonjour,
Dans mon application graphique, j'utilise un MetaFileCanvas pour transférer mon dessin dans le presse papier lors d'un copier-coller vers d'autres applications. Jusqu'à maintenant je faisais :
--------------------------------------------------------------------------
MetaFileCanvas:=TMetafileCanvas.Create(Metafile,Printer.Handle);
--------------------------------------------------------------------------
Ceci fonctionne très bien sur un ordinateur pourvu qu'il ait au moins un pilote d'imprimante installé... Evidemment, ça coince s'il n'y a aucune imprimante installée.
J'ai essayé alors d'utiliser l'écran comme périphérique de référence pour la création de mon MetafileCanvas :
--------------------------------------------------------------------------
MetaFileCanvas:=TMetafileCanvas.Create(Metafile,0);
--------------------------------------------------------------------------
mais alors, certains détails de mon dessin ne sont plus lisibles sur le document final (traitement de texte) car la résolution est trop faible. Plus précisément je dessine, entre autres, des lignes en pointillés :
sur l'écran, j'utilise le tableau Pixels[x,y] pour dessiner mes points;
sur l'imprimante, je dessine des petits cercles de rayon 0,125 mm pour dessiner ces mêmes points. Si mon MetafileCanvas est basé sur l'écran comme périphérique de référence, les pixels sont trop petits pour apparaître sur l'imprimante une fois le dessin collé dans le document texte.
Je cherche une solution permettant d'installer autoritairement une imprimante si l'ordinateur hôte n'en a pas. Quelqu'un sait-il comment faire ?
Merci d'avance pour toute suggestion.
Partager