假设以下 HTML 结构:
<div id="image-blob" class="filter-wrapper">
<img id="pic" src="">
</div>
我正在将 CSS3 过滤器-webkit-filter: blur(1px) brightness(1.5) contrast(1.8) drop-shadow(black 16px 16px 20px) grayscale(0.2) hue-rotate(90deg) invert(0.1) saturate(3.6) sepia(0.3);
应用于<img>
元素。
是否可以在不涉及任何服务器端进程/代理的情况下将带有过滤器的渲染图像转换为最终用户下载的 blob?
注意:客户端下载正在使用FileSaver.js完成,并且可能使用HTML2Canvas转换为画布
编辑:
进一步的调查表明这可能是不可能的(证明这个错误是最受欢迎的),唯一的解决方案可能是通过 javascript 在画布本身中复制这些过滤器。Pixel Manipulation Tutorial或像CamanJS这样的实体库。