¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Problemas de alinhamento ao imprimir a partir do tempo de execução no Crystal Reports: O que verificar?

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

Tenho um relatório que utiliza o driver de impressora Genérico/Somente texto com a fonte do dispositivo 12cpi. Quando é impresso (para um arquivo) a partir do designer do Crystal Reports, o layout está correto. No entanto, ao imprimir a partir do tempo de execução (última versão do SP, utilizando o motor RAS), existem alguns problemas de alinhamento.

Alguma sugestão sobre o que verificar ou problemas conhecidos a serem considerados?

O relatório é muito complicado, com muitos sub-relatórios, e os problemas de alinhamento ocorrem nos sub-relatórios. O relatório é de um cliente e até agora não tive sucesso em reproduzir o problema em um relatório mais simples ou isolar qualquer diferença nos campos que têm o problema. Todos parecem estar alinhados e dimensionados corretamente.

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

4 Respuestas

0
Cargando...

Olá, Don.

Estou utilizando PrintOutputController.PrintReport.

A impressora "Genérica / Somente texto" é um driver genérico do Windows que envia a saída para um arquivo de texto (com alguns códigos de controle) para ser enviado a uma impressora não conectada ao Windows. O driver suporta apenas fontes de dispositivo de largura fixa (não TrueType ou OpenType). Minha compreensão é que o PrintOutputController ignora o .NET, então as fontes de dispositivo devem funcionar.

Meu cliente atualmente está executando este relatório usando um programa muito mais antigo que usa um tempo de execução antigo do CR (antes do .NET, eu acredito) e a saída é formatada corretamente quando impressa a partir desse programa.

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

Olá Bill,

Na realidade, P2P e POC ainda utilizam a estrutura DEVMODE do Windows para formatar o relatório com base na estrutura DEVMODE do C++ para aquele driver de impressora. Todas as nossas chamadas de impressora vão para o motor principal crpe32.dll.

Nós usamos fontes TT e glifos incorporados na fonte, então esse pode ser o problema.

Quanto ao aplicativo antigo, é difícil dizer o que estavam/estão usando e por que está funcionando sem saber qual SDK estava sendo utilizado.

Tudo o que posso sugerir é que usem Times New Roman, é uma fonte de tamanho fixo, então pode reduzir as distorções que estão vendo.

Outra opção que poderia funcionar é adicionar uma nova impressora e configurar a saída para um arquivo, seria um tipo de arquivo PRN, usar uma impressora real em vez da impressora genérica do Windows. Embora não tenha certeza se isso ajudaria.

Outra opção é exportar para XML ou CSV e usá-lo como fonte de impressão.

Realmente não posso sugerir mais nada, pois estão comparando a impressão do .NET com o que provavelmente é uma plataforma muito antiga e obviamente com muitas mudanças.

Como configuraram a impressora de texto genérica?

Don

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

Obrigado pelas sugestões. Na minha opinião, o mais importante é que o relatório seja renderizado corretamente no arquivo ao ser impresso a partir do Crystal Reports, então estou tentando entender por que o tempo de execução está produzindo um resultado diferente se ambos utilizam o mesmo mecanismo de impressão.

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

É provável que o CR Designer utilize GDI.dll para renderizar a página.

O CR .NET utiliza GDIPlus, então pode haver pequenas diferenças, por isso também sugiro que ao criar o relatório não se utilize nenhuma impressora.

As margens podem desempenhar um papel importante quando o motor de formatação posiciona os objetos.

Também é sabido que a Microsoft tem problemas com seus drivers de impressão.

Experimente com uma impressora diferente, como uma HP ou algo mais atualizado, e veja se isso ajuda.

Está se perguntando por que estão imprimindo primeiro em um arquivo e não diretamente na impressora?

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?