bhe spero di poterti aiutare...ma mi devi dire se devi visualizzare dati (come testo o altro) oppure immaggini (tif, jpg,gif, bmp o altro)



Cmq...se sono immagini basta che le ridimensioni a dimensione dello schermo x fare l'anteprima.

Poi per le modalità di stampa è altrettanto semplice:

1) Stampa normale...fai direttamente un printer.paintpicture
2) Stampa a Dimensioni della pagina:
-Prendi il lato + lungo del documento e lo imposti con l'altezza o la lunghezza del foglio (prendi queste infos sempre dall'oggetto printer), naturalmente altezza o larghezza in base all'orientamento del documento! Fatto questo ti fai una piccola proporzione -> NewWidth=int((OldWidth*NewHeigth)/OldHeigth) <- Se devi fare x l'altezza scambia i fattori :P
Fatto questo calcolo centra l'immagine:
X=int((Printer.ScaleWidth/2)-(DocWidth/2)) e lo stesso x la Y...dopo di che passa tutto a Printer.PaintPicture...cosi:

Printer.PaintPicture Immagine,X,Y,NewWidth,NewHeigth...e ta daaaa il gioco e fatto! Tieni conto che nell'oggetto printer non devi usare .Width ma .ScaleWidth e bada al fatto che tutti e due (immagine e printer) devono usare lo stesso tipo di misurazione...ovvero Pixel, Twips, Points e cosi via

Gli altri metodi di stampa...bho nn so Cmq questi sono quelli principali...

Spero di essere stato d'aiuto!