![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Raro resultado al convertir mm a pixels para usar con QuickRepor
Hola a todos,
Tengo una duda acerca de la equivalencia de MM a Pixels con QuickReport. Para ponerlo en contexto, empiezo diciendo que mi problema básico era poner sobre un panel TLabels que luego deberían convertirse a TQRLabel y ponerlos sobre una banda de quickreport. Para ello necesito que el panel tenga en pixels el mismo ancho que la banda de QuickReport. La idea es simple a partir de que mis QuickReports manejan tamaños de hojas de papel en mm, y los bordes también. así que el ancho de banda en mm es el ancho del papel menos el margen izquierdo y menos el margen derecho. Por tanto, el ancho del panel debería ser simplemente pasar ese ancho en mm a pixels. Para esto último uso lo siguiente
Sin embargo, cuando se ejecuta el programa, el factor de Escala AnXScale, para mi monitor y configuración de pantalla, da 3.63 mientras que el que QuickReport está aplicando es de 3.77, una diferencia demasiado grande para justificarla con errores de redondeo. Akguien sabe que puede estar pasando ?. Me falta algo en el cálculo ? Agradezco cualquier comentario |
|
#2
|
||||
|
||||
|
Que yo sepa, un pixel llevado a "la vida real" no tiene un tamaño fijo, y es distinto entre diferentes monitores.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#3
|
|||
|
|||
|
Por eso es el cálculo
Hola Casimiro,
Muchas gracias por comentar. Si, claro, el pixel varía entre monitores; por eso es el cálculo que hago de determinar a que equivale el pixel en mi monitor en particular. Para ser consistente, comparo contra el cálculo que hace QuickReport en mi mismo monitor; ya que, por lo expuesto, si usaramos otro monitor se sería lógico que nos diera diferente. El caso es que están dando diferente con el "mismo monitor". Yo pensaría que QuickReport, al hacer la conversión, debería seguir básicamente mi mismo proceso; pero, no lo hace. La pregunta es : Por qué ? |
|
#4
|
||||
|
||||
|
Cita:
![]() Deberías saber cómo lo hace quickreport, ¿no tienes acceso al código fuente o en algún lugar de la documentación? Es que estarás "dando palos de ciego" mientras no te asegures de ese tema.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#5
|
|||
|
|||
|
Ese es el problema
Hola Casimiro,
Si, ese es el problema. Por eso pregunto aquí. Es que la lógica indica que para tener una vista preliminar en pantalla, como lo hace QuickReport, las posiciones y tamaños de los campos en mm deben ser las que efectivamente se van a imprimir; pero, en pantalla se despliega en Pixels (y las medidas de los componentes QuickReport están en pixels), luego deben convertirse los mm a pixels. Como hacerlo es el problema. El método que empleo es lo lógico; pero, como dije antes, la evidencia indica que no es el mismo que usa Quick Report. La gran pregunta es por qué ? (bueno, y por supuesto, que método usa '). En este momento ni siquiera se me ocurre una razón para usar un método distinto. |
|
#6
|
||||
|
||||
|
Todos los generadores de informes que conozco, trabajan en twips ( 1 pulgada tiene 1440 twips si no recuerdo mal), ya que es una medida independiente del dispositivo (papel, impresora, pantalla, escaner). Para colmo de males, se tiene en cuenta la propiedad del Form PixelPerInch (varía al usar fuentes grandes o normales en windows).
Cuando trabajé con Reportman (la versión OpenSource), usé estas conversiones: Código:
1440 twips 2.54 cms
twips_per_Inch = ------------ cms_per_Inch = ---------
1 Inch 1 Inch
72 pixels
pixels_per_inch = -----------
1 inch
-----------------------------------------------------------------------------}
Estas otras, son de ReportMan (Open Source): Te recomiendo (por el bien de tu salud mental ) uses siempre una sola unidad, todo en twips, y, si tienes que mostrar algo al usuario, entonces haces al conversión a pixels o pulgosos.Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. Última edición por Lepe fecha: 01-07-2013 a las 17:22:04. Razón: corregir erratas |
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| convertir resultado FormatFloat | camiz | Varios | 3 | 02-04-2013 17:03:51 |
| Error Raro al Usar IBX's sobre Firebird 2.0 | AGAG4 | Firebird e Interbase | 17 | 01-10-2008 20:29:39 |
| convertir a pixels | avmm2004 | Gráficos | 2 | 13-02-2008 16:02:34 |
| ¿Pixels no son pixels en todas las configuraciones? | elcigarra | Gráficos | 0 | 27-01-2006 14:38:05 |
| convertir de 'TCaption' para usar su valor en 'PAnsiChar' | jbgpina | OOP | 5 | 03-03-2004 14:06:45 |
|