Vorrei stampare dei dati presenti su una mia collection di classi con GDI+ (PrintDocument per intenderci).
Quando stampo (nell'evento PrintPage) uso questo genere di comando:
e.Graphics.DrawString("Stringa", font, Brushes.Black, x, y)
Il problema sono le coordinate X e Y.
Considerando che ho un foglio A4 di dimensioni 21x29.7 vorrei stampare dati anche affiancati a delle distanze definite: Codice con coordinate x=1 e descrizione con coordinata x=5 dove i valori sono espressi in centimetri... Ma le coordinate, che recupero con il seguente codice
Dim x As Single = e.MarginBounds.Left
Dim y As Single = e.MarginBounds.Top
mi vengono restituite in pixel (almeno credo) ma non trovo una funzione per convertirle.
Ho provato ad usare questo genere di conversione
e.Graphics.PageUnit = GraphicsUnit.Millimeter
ma i dati restituiti sono sempre in pixel, mentre i dati inputati vengono convertiti (e questo è un grosso problema...)
Come posso fare?
--------------
Maurizio Brini
--------------
Nessuna impresa è mai stata compiuta da un uomo ragionevole