最近是在使用html2canvas做分享海报的图片,用qrcode.react的QRCodeSVG生成了二维码,但是发现生成的海报二维码中间的logo不渲染
例如
<QRCodeSVG
value={pageUrl}
size={qrSize}
level={'M'}
imageSettings={{
src: 'https://123/web-require-js/themes/18blue/images/logo2.jpg'
x: null,
y: null,
height: logoSize,
width: logoSize,
excavate: true,
}}
/>
是由于html2canvas截图时不会去请求SVG中的image的远程图片,将其改为base64可解决
<QRCodeSVG
value={pageUrl}
size={qrSize}
level={'M'}
imageSettings={{
src: 'base64地址'
x: null,
y: null,
height: logoSize,
width: logoSize,
excavate: true,
}}
/>