我目前正在使用this插件在我的网站上生成QR码。这些QR码用于产品,因此在下载时是指特殊产品。
这是我用来生成它并使其能够下载的代码:
<a href="data:image/png;base64, <?php echo base64_encode(QrCode::format('png')->size(500)->encoding('UTF-8')->errorCorrection('H')->generate('https://localhost/product/'.$product->id));?> "
download=<?=$product->name."_QRCode";?>>
<img src="data:image/png;base64, <?php echo base64_encode(QrCode::format('png')->margin(1)->size(50)->encoding('UTF-8')->errorCorrection('H')->generate('https://localhost/product/'.$product->id));?>">
</a>
现在有了线索:像这样,有人可以下载10个QR码,但不知道这个QR码属于哪里。因此,我希望下载的QR码与字符串合并......但正如文档所说,The merge method only supports PNG at this time
我想它不可能直接这样做。但是我想知道PHP中是否存在一种方式(以及我使用的Laravel,如果这会改变某些东西)从我输入的字符串中生成图像(png),所以喜欢( pseudoCode跟随):
$mergeText = $product->name;
$image = stringToPng($mergeText);
//maybe instead convert to base64 image, like the qr-code? don't know
QrCode::format('png')->size(500)->encoding('UTF-8')->errorCorrection('H')->merge($image)->generate('https://localhost/product/'.$product->id));?>
有人知道这是否可行?
答案 0 :(得分:1)
这是可能的,但不是你想要的方式。
首先,您必须将文本转换为图像。如何做到这一点应该是您的主要问题,您可以尝试这个答案:convert text to image in php。
当您已拥有PNG图像时,您将能够使用merge
方法。