1

就是这样,我使用 SVG 图像来创建图案。该模式显示在大多数浏览器中。但是 Chrome 不显示该模式。如果我将 png 图像作为新 Image() 对象的来源,Chrome 会显示它。我试图找出这是否正常,但在网上找不到任何相关信息。我做错了什么还是这是一个已知问题?

4

1 回答 1

0

The only solution I have found for the same problem in Chrome is to include the patterns inside the svg in base64 encoding:

<pattern  id="pat01" xlink:href="data:image/png;base64,iVBOR...CC " style="opacity:1;stop-opacity:1" /></pattern>
...
<circle cx="23" cy="153" r="18" style="opacity:1;fill:url(#pat01);fill-opacity:1;stop-opacity:1;stroke:#000000;stroke-miterlimit: 10;"></circle>

When you serialize it and paint in a canvas, the patterns are displayed properly.

于 2020-08-30T03:14:52.650 回答