Avalados por :

Problemas de alineación al imprimir desde el tiempo de ejecución en Crystal Reports: ¿Qué revisar?

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 6 Vistas
0
Cargando...

Tengo un informe que utiliza el controlador de impresora Genérico/Solo texto con la fuente del dispositivo 12cpi. Cuando se imprime (a un archivo) desde el diseñador de Crystal Reports, el diseño es correcto. Sin embargo, al imprimir desde el tiempo de ejecución (última versión del SP, utilizando el motor RAS), hay algunos problemas de alineación.

¿Alguna sugerencia sobre qué revisar o problemas conocidos a tener en cuenta?

El informe es muy complicado con muchos subinformes, y los problemas de alineación ocurren en los subinformes. El informe es de un cliente y hasta ahora no he tenido éxito en reproducir el problema en un informe más simple o aislar cualquier diferencia en los campos que tienen el problema. Todos parecen estar alineados y dimensionados correctamente.

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Hola, Don.

Estoy utilizando PrintOutputController.PrintReport.

La impresora "Genérica / Solo texto" es un controlador genérico de Windows que envía la salida a un archivo de texto (con algunos códigos de control) para ser enviado a una impresora que no está conectada a Windows. El controlador solo admite fuentes de dispositivo de ancho fijo (no TrueType u OpenType). Mi entendimiento es que PrintOutputController omite .NET, por lo que las fuentes de dispositivo deberían funcionar.

Mi cliente actualmente está ejecutando este informe utilizando un programa mucho más antiguo que utiliza un tiempo de ejecución de CR antiguo (antes de .NET, creo) y la salida se formatea correctamente cuando se imprime desde ese programa.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Hola Bill,

En realidad, P2P y POC todavía utilizan la estructura DEVMODE de Windows para formatear el informe basado en la estructura DEVMODE de C++ para ese controlador de impresora. Todas nuestras llamadas de impresora llegan al motor principal crpe32.dll.

Utilizamos las fuentes TT y los glifos incrustados dentro de la fuente, por lo que ese puede ser el problema.

En cuanto a la aplicación antigua, es difícil decir qué estaban/están utilizando y por qué funciona sin saber qué SDK utilizaba.

Todo lo que puedo sugerir es que utilicen Times New Roman, es una fuente de tamaño fijo, por lo que puede reducir los desplazamientos que están viendo.

Otra opción que podría funcionar es agregar una nueva impresora y establecer la salida en un archivo, sería un tipo de archivo PRN, utilizar una impresora real en lugar de la impresora genérica de Windows. Aunque no estoy seguro de si eso ayudaría.

Otra opción es exportar a XML o CSV y utilizarlo como fuente de impresora.

Realmente no puedo sugerir nada más, ya que están comparando la impresión de .NET con lo que probablemente es una plataforma muy antigua y obviamente con muchos cambios.

¿Cómo configuraron la impresora de texto genérica?

Don

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Gracias por las sugerencias. Lo principal, en mi opinión, es que el informe se renderiza correctamente en el archivo cuando se imprime desde Crystal Reports, por lo que estoy tratando de entender por qué el tiempo de ejecución está produciendo un resultado diferente si ambos utilizan el mismo motor de impresión.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Es probable que en CR Designer se utilice GDI.dll para renderizar la página.

CR .NET utiliza GDIPlus, por lo que puede haber ligeras diferencias, por eso también sugiero que al crear el informe no se utilice ninguna impresora.

Los márgenes pueden desempeñar un papel importante cuando el motor de formato coloca los objetos.

También se sabe que Microsoft tiene problemas con sus controladores de impresión.

Prueba con una impresora diferente, como una HP o algo más actualizado, y ve si eso ayuda.

¿Te preguntas por qué están imprimiendo primero en un archivo y no directamente en la impresora?

Don

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?