nfephp-org / sped-da

Classes para geração dos documentos auxiliares usados pelos padrões Sped
Other
139 stars 238 forks source link

Erro ao renderizar PDF sem logo em Daeevento #390

Closed eumanito closed 3 years ago

eumanito commented 4 years ago

Pessoal, não estou conseguindo gerar o PDF para Carta de Correção sem passar o logo.

$daevento = new Daevento($xml, $dadosEmitente);
header('Content-Type: application/pdf');
$pdf = $daevento->render($logo='');

O conteúdo é inválido e o PHP não consegue renderizar. Aparece assim no navegador: %PDF-1.3 3 0 obj <> endobj 4 0 obj <> stream x��Y�r�8��)�8�����=i,%�)��J����`��p�R�L���0O�05�T�;��%Z �$)�M����� � )LL�◔��]�w�g���0�#I�J��h}�@��� ȡ��V�q)R�H�)-�¿��Q��Y�B��3�D(Cޑ�����bq�DbSE�F�s�=��(Z��

Na classe Danfe() funciona! Tentei comparar as duas (Danfe vs Daevento) e não encontrei o que pode estar causando erro.

Alguém pode me ajudar?

robmachado commented 4 years ago

Colega !! para o navegador renderizar tem que passar o header de pdf (e pode ser que não funcione em qq navegador use o chrome) Mas não coloque $logo = '' e sim

header('Content-Type: application/pdf'); $pdf = $daevento->render();

eumanito commented 4 years ago

@robmachado Estou passando o header de pdf, olha o que postei antes!

Devido a não ter o logo ele não consegue renderizar.

robmachado commented 4 years ago

Se não tem logo não passa ou passa NULL

eumanito commented 4 years ago

Exatamente, tentei passar uma string vazia ou null e não aceita.

Em sáb, 19 de set de 2020 15:34, Roberto L. Machado < notifications@github.com> escreveu:

Se não tem logo não passa ou passa NULL

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/nfephp-org/sped-da/issues/390#issuecomment-695342210, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAXGXXOBMRMZYDLPF7K2KT3SGT2SHANCNFSM4RSSOMWA .

robmachado commented 4 years ago

Vou investigar isso

sistemoc commented 3 years ago

Sei que este issue já tem algum tempo, mas me deparei nesse erro neste momento e encontrei a solução... Basta adicionar "exit;" (sem as aspas duplas) após o echo $pdf.

Exemplo: $pdf = $daevento->render(); header('Content-type: application/pdf'); echo $pdf; exit;

bicosujo commented 1 year ago

Show só colocar o exit; que funcionou