laravel 在DOMPDF中生成的简单qrcode

q43xntqr  于 2023-08-08  发布在  其他
关注(0)|答案(2)|浏览(80)

嗨我不能在dompdf中生成简单的qrcode
这是我的blade.php

<img src="data:image/png;base64, {!! base64_encode(QrCode::format('svg')->size(200)->errorCorrection('H')->generate('string')) !!}">

字符串
在我的控制器里

public function printpdf($isbn)
    {
       $data = [
          'isbn' => $isbn
            ];

        $pdf = PDF::loadView('main.inventory.view_pdf ', $data);  
        return $pdf->stream($isbn.'.pdf');
    }


我尝试了这个图像并成功地渲染

<img src="{{ public_path('/uploads/image/1578635297.jpg')}}" style="width:30%;height:50%;">


不知道为什么我不能生成qrcode到dompdf,但当我在其他刀片其工作,但不在dompdf生成

d4so4syb

d4so4syb1#

我通过在控制器中的变量中初始化base64_encode(QrCode::format('svg')->size(200)->errorCorrection('H')->generate('string'))并将其传递给视图来使我的工作。
控制器:

public function foobar() {
   $qrcode = base64_encode(QrCode::format('svg')->size(200)->errorCorrection('H')->generate('string'));
   $pdf = PDF::loadView('main.inventory.view_pdf', compact('qrcode'));
   return $pdf->stream();
}

字符串
查看:

<img src="data:image/png;base64, {!! $qrcode !!}">


使用laravel-snappy代替laravel-dompdf。https://github.com/barryvdh/laravel-snappy
如果您仍然无法生成pdf文件,请临时更改chmod -R 777 <folder_path>文件夹的读写权限。

ajsxfq5m

ajsxfq5m2#

我在windows10中用php8.1就可以了。下面是我的代码:

@php
    $qr = null;
    if (extension_loaded('imagick')) {
       $qr = QrCode::size(80)
                    ->format('png')
                    ->generate($my_qr_content);
    }
@endphp

@if ($qr)
     <img src="data:image/png;base64,{!! base64_encode($qr) !!}" />
@endif

字符串
请注意,它适用于svg和png格式。

相关问题