给图片添加滤镜前,我们必须先使用cache()
方法将它缓存起来,然后使用filter()
方法添加滤镜。
我们可以使用Konva.Filters.Enhance
滤镜调节图片反差,然后设置enhance
来控制反差大小。
说明:滑动控制杆来调节反差值。
查看所有滤镜 Filters Documentation.
Konva Enhance Image Demoview raw<!DOCTYPE html> <html> <head> <script src="https://unpkg.com/[email protected]/konva.min.js"></script> <meta charset="utf-8" /> <title>Konva Enhance Image Demo</title> <style> body { margin: 0; padding: 0; overflow: hidden; background-color: #f0f0f0; }
#slider { position: absolute; top: 20px; left: 20px; } </style> </head>
<body> <div id="container"></div> <input id="slider" type="range" min="-1" max="1" step="0.01" value="20" /> <script> var stage = new Konva.Stage({ container: 'container', width: window.innerWidth, height: window.innerHeight });
var layer = new Konva.Layer(); stage.add(layer);
Konva.Image.fromURL('/assets/lion.png', function(lion) { lion.setAttrs({ x: 80, y: 30, enhance: 0.5, draggable: true }); lion.cache(); lion.filters([Konva.Filters.Enhance]); layer.add(lion); layer.draw();
var slider = document.getElementById('slider'); slider.oninput = function() { lion.enhance(parseFloat(slider.value)); layer.batchDraw(); }; }); </script> </body> </html>
|