Discussion:
Convertir pixel a centímetros y viceversa!
(demasiado antiguo para responder)
Gustavo Arriola
2005-03-31 01:11:42 UTC
Permalink
Hola a ***@s!

¿Cómo puedo hacer para convertir de pixel a centímetros y viceversa?

Desde ya muchas gracias!

Gustavo!
A.Poblacion
2005-03-31 09:48:54 UTC
Permalink
Post by Gustavo Arriola
¿Cómo puedo hacer para convertir de pixel a centímetros y viceversa?
Buscas la documentación del dispositivo que está representando los
pixels, obtienes las dimensiones en centímetros, divides por el número de
píxels, y eso te da los pixels por centímetro.
Por ejemplo, un monitor que mida horizontalmente 30 centímetros y tengas
configurado para visualizar las aplicaciones en 1024x768 tiene 1024/30 =
34,13 pixels por centímetro.
En cambio, una impresora que pinte 1200 puntos por pulgada tiene 472,44
pixels por centímetro.
José Manuel Agüero
2005-04-10 20:37:08 UTC
Permalink
Hola, Gustavo:

Como ha dicho A.Poblacion, Windows no suele tener información fiable sobre el tamaño real de los monitores, aunque sí de las impresoras.
El objeto System.Drawing.Graphics tiene las propiedades DpiX y DpiY que te informan del número de puntos por pulgada. Basta con dividir el valor entre 2.54 para tenerlo en centímetros.
Por ejemplo, con la configuración de fuentes pequeñas, Windows considera que todos los monitores tienen 96 pixeles por pulgada. Puedes comprobarlo con este ejemplo:

Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles MyBase.Paint
e.graphics.drawstring(e.graphics.dpix.tostring,me.font,systembrushes.controltext,0,0)
End Sub

De la misma forma puedes obtener la resolución en el evento PrintPage cuando usas una impresora.

Saludos.


"Gustavo Arriola" <***@gmail.com> escribió en el mensaje news:eKQf%***@TK2MSFTNGP10.phx.gbl...
| Hola a ***@s!
|
| ¿Cómo puedo hacer para convertir de pixel a centímetros y viceversa?
|
| Desde ya muchas gracias!
|
| Gustavo!

Continúe leyendo en narkive:
Loading...