Inscrições abertas para nosso Webinar anual Adianti Framework 2024!
Clique aqui para saber mais
Problema de compatibilidade do Bacon Qrcode e FPDF Bom dia! Estou atualizando meu sistema para a nova versão do FW. Entretanto, a nova versão com a atualização do Bacon Qrcode, utilizando a biblioteca Imagick não gera qrcodes compatíveis com o FPDF (TPDFDesigner) produzindo o seguinte erro: Fatal error: Uncaught Exception: FPDF error: 16-bit depth not supported: tmp/barcode_1747672485.png in ... Utilizei o modelo de có...
RT
Problema de compatibilidade do Bacon Qrcode e FPDF  
Bom dia!
Estou atualizando meu sistema para a nova versão do FW.
Entretanto, a nova versão com a atualização do Bacon Qrcode, utilizando a biblioteca Imagick não gera qrcodes compatíveis com o FPDF (TPDFDesigner) produzindo o seguinte erro:
Fatal error: Uncaught Exception: FPDF error: 16-bit depth not supported: tmp/barcode_1747672485.png in ...

Utilizei o modelo de código disponível no tutor, entretanto, aproveito também para informar que ele informa(no tutor) que falta a biblioteca Imagick, um bug a ser corrigido.
Link: https://framework.adianti.me//tutor/index.php?class=FormQrcodeView
Segue o trecho do codigo utilizado para gerar:
$conteudo_barcode = '79204415301'; $rand = mt_rand(1000000000, 1999999999); $output = "tmp/barcode_{$rand}.png"; $backend = new BaconQrCode\Renderer\Image\ImagickImageBackEnd; $renderer = new \BaconQrCode\Renderer\ImageRenderer( new \BaconQrCode\Renderer\RendererStyle\RendererStyle(100), $backend ); $writer = new \BaconQrCode\Writer($renderer); $writer->writeFile($conteudo_barcode, $output);


Tentei encontrar maneiras de converter o formato posteriormente mas não consegui.

Qualquer ajuda será bem vinda!

Obrigado!
Editado 23/03/2023 (há 1 ano) - Clique para ver alterações

Pacotão Dominando o Adianti Framework 7
O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado! Versão 7.4


Dominando o Adianti 7 Quero me inscrever agora!

Comentários (3)


NR

Dentro da classe AdiantiBarcodeDocumentGenerator tem o código abaixo:
  1. <?php
  2. $imagick_image = new Imagick($output);
  3. $imagick_image->setCompressionQuality(100);
  4. $imagick_image->writeImage("png24:$output");
  5. ?>

Não testei, mas veja se alterando para "png8" resolve o seu problema.
NR

Só pra mencionar, executei esse exemplo do tutor em ambiente local e funcionou certinho, sem precisar alterar nada...
RT

Bom dia !
Infelizmente, o modelo do template usando no FDPF realmente não funcionou. Entretanto, com a alteração sugerida, funcionou corretamente.
Também testei uma outra funcionalidade que seria converter o png para jpg e tb funcionou!
Vou aproveitar para deixar o código para quem possa interessar.
Muito obrigado Nataniel!
<codigo>
public function png2jpg($originalFile, $outputFile, $quality) {
$image = imagecreatefrompng($originalFile);
imagejpeg($image, $outputFile, $quality);
imagedestroy($image);
}
</codigo>

Editado 31/03/2023 (há 1 ano) - Ver alterações