Pergunta

Encontrei esta postagem em Crystal Reports cortando texto em PDF, mas não resolveu meu problema.

Eu tenho um Crystal Report que contém um campo dentro de um objeto de texto (para controlar o espaçamento entre linhas) e tem "pode ​​crescer" selecionado.Quando exporto o Crystal Report para um PDF, há casos em que o texto é cortado.

enter image description here

Neste exemplo o texto está sendo cortado no lado direito, mas em alguns casos, quando o texto consiste em muitas linhas, a parte inferior da última linha será parcialmente cortada.

Estou usando o Crystal Reports que acompanha o Visual Studio 2008.A área de texto tem "pode ​​crescer" marcada, a fonte está definida como Helvetica LT Condensed, negrito 14, e o espaçamento entre linhas está definido como 0,75 vezes o normal.

Alguém tem alguma idéia de como posso consertar isso?

Foi útil?

Solução 2

Acho que descobri o problema.A largura do sub-relatório delimitador era menor que a largura do objeto de campo.Ajustar sua largura corrigiu o truncamento que ocorria no lado direito.

Por outro lado, o texto truncado na parte inferior parece ser o resultado do ajuste do espaçamento entre linhas para muito pequeno.se você definir o espaçamento entre linhas como um múltiplo do tamanho do ponto do texto original e torná-lo muito pequeno, a parte inferior da linha será truncada.Mudei para "exato" e inseri um tamanho de ponto específico (por exemplo, espaçamento entre linhas de 18 pt.para meus 16 pontos.texto) e isso pareceu resolver o problema.Se o espaçamento entre linhas for muito pequeno, parece que o Crystal mascara a parte inferior do texto.

Outras dicas

Eu também me deparei com isso - Crystal parece um pouco confuso sobre onde estão as bordas da caixa de texto.Sugiro adicionar um pequeno recuo à direita na caixa de texto (clique com o botão direito na caixa de texto, selecione 'Formatar objeto', selecione a guia 'Parágrafo' e insira números pequenos (talvez 0,2 ou mais) na caixa de texto à direita.Isso deve ajudar com a margem direita.

Quanto ao corte inferior, não há margem que possa adicionar.Você pode adicionar uma quebra de linha ao final do seu texto, pois ele vem do banco de dados?Ou você pode tentar um campo de fórmula para adicionar a quebra de linha:

{table_name.field_name} + chr(13) + chr(10)
  • Clique com o botão direito no campo de texto
  • Selecione a guia comum
  • Na seção Alinhamento Horizontal mudei para “Justificado”.

Isso ajustou o texto para que ele se estendesse corretamente e não fosse cortado prematuramente ao usar o Can Grow.

Eu tentei isso e resolveu esse problema.

Tente fazer o seguinte:

Objeto de texto > Clique com o botão direito > Formatar texto > Guia Borda

Alterar estilo de linha:Direita/Esquerda/Superior/Inferior como única e mude a cor para Branco.

Eu tive esse problema quando atualizei um procedimento armazenado.Alterei o campo Descrição que estava puxando para o relatório de VARCHAR(100) para VARCHAR(150) embutido com uma alteração solicitada.O relatório Crystal em modo de visualização armazenava o limite antigo de 100 caracteres e estava truncando o rótulo.Isso foi corrigido quando verifiquei o banco de dados novamente.

Guia Banco de Dados -> Verificar Banco de Dados

Eu também descobri isso.Só aconteceu na visualização HTML.Fiz algumas coisas que durante 3 blocos precisei fazer diferentes e tentei vários cenários para escolher o melhor para seguir.- Formatar o texto da esquerda JustuFied a Justified - agarrar a borda direita da caixa de texto e puxou -a em um carrapato da margem direita - mudou a fonte do Times New Roman para outro (Wierd) - exportando de Bi LP como um crp e Exportado do cliente CR 2013 para PDF - Alterar o tamanho da fonte - tivemos uma linha média "e / ou" e alteramos para "e / ou"

Optamos pelo alinhamento justificado, pois estava próximo de uma linha completa e não parecia diferente do original.

Muitas soluções alternativas estranhas que o corrigiram.Para mim, isso indica uma falha na atualização do sistema no relatório.

Espero que o que descobri ajude outras pessoas.

Se você tentou todos os métodos e ainda não funcionou, você pode tentar o seguinte:

     Local StringVar inString := 'Your text string here.......';

     Local NumberVar strLen := Length (inString);
     Local StringVar result := "";
     Local NumberVar maxLen := 45;    // adjust the length of text per line
     Local NumberVar idx := 0;
     Local NumberVar proceed := 0;

     While strLen > maxLen Do
     (
      proceed := 1;
      idx := maxLen;
      While (mid(inString,idx,1) <> " "  and idx > 1) Do
      (
       idx := idx -1;
       );
      if (idx = 1) then 
             result := result + mid(inString,1,maxlen) + chr(10)
      else
         (
             result := result + mid(inString, 1, idx-1)+ chr(10);
             strLen := strLen-idx;
             inString := mid(inString, idx+1, strLen)
         )
      );

     if proceed = 1 then
      (
        result := result + inString
       )
      else
       (
       result := inString
     );
  result

Em um ambiente com Crystal Reports, foi uma ajuda definir a chave de registro:ForceLargerFonts = 0

Como encontrar?

Para versão de 64 bits do MS Windows:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\SAP BusinessObjects\Suite XI 4.0\Crystal Reports\Export\PDF

Para versão de 32 bits do MS Windows:
HKEY_LOCAL_MACHINE\SOFTWARE\SAP BusinessObjects\Suite XI 4.0\Crystal Reports\Export\PDF

Consulte também a seguinte solução emhttps://apps.support.sap.com/sap/support/knowledge/public/en/0001835763

Este é um problema difícil que você deve atacar em 3 frentes diferentes:

  1. Correção de software
  2. Impressora padrão
  3. Autoria de formulário

Correção de software: Você precisará baixar o CRRuntime que inclui o Hot Fix 20.Este Hot Fix resolve problemas de truncamento ao criar um PDF.Você pode encontrá-lo em http://downloads.businessobjects.com/akdlm/crnetruntime/clickonce/CRRuntime_64bit_13_0_20.msi

Impressora padrão: A impressora usada ao criar um relatório deve corresponder à impressora na qual você está renderizando um relatório.Em nossos servidores, não há impressoras instaladas, exceto o Microsoft XPS Document Writer.Certifique-se de selecioná-la como impressora padrão ao escrever o relatório.

Autoria de formulário: Ao adicionar um campo de banco de dados ao relatório, não arraste-o do explorador de campo para a superfície de design.Primeiro insira um objeto de texto na superfície de design.Depois de posicionar e redimensionar o Objeto de Texto da maneira que desejar, arraste o campo do banco de dados para o Objeto de Texto.Você verá o nome do item do banco de dados entre chaves aparecer no Objeto de Texto.Por alguma razão, o campo do banco de dados será melhor agrupado quando for delimitado por um objeto de texto.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top