jquery - Html5 Canvas 模糊并保存

标签 jquery html canvas blur

这就是困扰我的事情。假设我有一张汽车的照片。我想将该图片放入 Canvas 中,对其进行模糊处理,然后保存模糊的图像。是否可以?如果有另一种方法来模糊和保存图像,则图像不一定必须位于 Canvas 中。我尝试过使用 blur.jspixastic.jsfoggy.js,它们都为图像添加了模糊效果,但是它停在那里,我无法保存它。我可以右键单击图像,但没有“将图像另存为”链接。预先感谢您的回答。

最佳答案

您可以使用一个名为 stackblur 的小脚本来做到这一点:

http://www.quasimondo.com/StackBlurForCanvas/StackBlurDemo.html

Stackblur.js:

  • 采用 img 元素,
  • 模糊图像并
  • 将模糊图像写入 Canvas 。

您可以通过更改模糊半径来控制“模糊度”:

var blurRadius=5;

stackBlurImage("blurMe","canvas",blurRadius,false);

然后你可以使用canvas.toDataURL来获取 Canvas 上模糊图像的数据url。

enter image description here

这里是示例代码:

<!doctype html>
<html lang="en">
<head>

  <style>
      body{ background-color: ivory; }
  </style>

  <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
  <script src="stackblur.js"></script>
  <script>

  $(function() {

stackBlurImage("blurMe","canvas",5,false);

document.getElementById("results").src=document.getElementById("canvas").toDataURL();


  });   // end $(function(){});

  </script>
</head>
<body>
    <p>The original img element</p>
    <img id="blurMe" src="car.jpg"><br>
    <p>The canvas with blurred image</p>
    <canvas id="canvas" width=300 height=300></canvas><br>
    <p>An image using the canvas as .src</p>
    <img id="results">
</body>
</html>

关于jquery - Html5 Canvas 模糊并保存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20758233/

相关文章:

JavaScript 上下文翻译在 Electron 中不起作用

jquery - 使用 Sinatra 和 jQuery 而无需在 POST 上重定向

.show 的 JQuery 事件监听器 ('drop' , 500) == 完成

html - 从链接中删除下划线

javascript - 来自不同位置的过渡元素

javascript - 使用 HTML Canvas 贝塞尔曲线绘制美观(如果不准确)的飞行路径

javascript - 清除 HTML Canvas 中形状下的像素

jquery - 如何在 jQuery 中批量发出 ajax 请求?

javascript - 将 Woocommerce 属性下拉列表转换为可点击文本

html - Bootstrap 4 : Vertical align floated element in a list