我正在为
plugin
开发一个Shopware 6
,我需要这个二维码库。我的问题是,当我尝试运行库时,我不断收到上述错误消息。
命名空间全部正确,一切都通过
Composer
安装并准备就绪。我的示例与 Packagist
上的示例完全相同,但我仍然收到此错误。
use Endroid\QrCode\Builder\Builder;
use Endroid\QrCode\Encoding\Encoding;
use Endroid\QrCode\ErrorCorrectionLevel;
use Endroid\QrCode\Label\LabelAlignment;
use Endroid\QrCode\Label\Font\NotoSans;
use Endroid\QrCode\RoundBlockSizeMode;
use Endroid\QrCode\Writer\PngWriter;
$result = Builder::create()
->writer(new PngWriter())
->writerOptions([])
->data('Custom QR code contents')
->encoding(new Encoding('UTF-8'))
->errorCorrectionLevel(ErrorCorrectionLevel::High)
->size(300)
->margin(10)
->roundBlockSizeMode(RoundBlockSizeMode::Margin)
->logoPath(__DIR__.'/assets/symfony.png')
->logoResizeToWidth(50)
->logoPunchoutBackground(true)
->labelText('This is the label')
->labelFont(new NotoSans(20))
->labelAlignment(LabelAlignment::Center)
->validateResult(false)
->build();
我还尝试用另一个库来实现它(
bacon/bacon-qr-code
),它也抱怨同样的问题,但只是不同的命名空间ImageRenderer
问题可能是什么?我正在使用
Docker
(v4.34.4)、Symfony
(v6.6.6.1) 和 PHP
(v8.3)
如果 PHP 位于 Docker 容器内,则 Composer 命令也应该在容器内运行。
您还可以尝试在 symfony 项目根目录下的容器内执行命令。
php bin/console cache:clear
composer dump-autoload -o