HTML5代码如何制作马克笔效果 HTML5代码混合模式的应用实例

html5代码如何制作马克笔效果 html5代码混合模式的应用实例

在HTML5中实现马克笔效果,主要依靠Canvas绘图技术与CSS的混合模式(mix-blend-mode)相结合。这种效果常用于高亮文本或图像区域,视觉上类似用荧光笔涂抹。下面介绍如何通过代码实现这一效果。

使用Canvas绘制马克笔轨迹

通过Canvas可以实时捕捉鼠标移动并绘制半透明、模糊边缘的线条,模拟真实马克笔的涂抹感。

关键点:

设置线条的globalAlpha为0.3~0.5,实现半透明效果使用shadowBlur添加柔和边缘选择明亮颜色如黄色、绿色模拟荧光笔

示例代码:

立即学习“前端免费学习笔记(深入)”;

const canvas = document.getElementById('canvas');const ctx = canvas.getContext('2d');

ctx.lineWidth = 30;ctx.lineCap = 'round';ctx.globalAlpha = 0.4;ctx.shadowColor = 'yellow';ctx.shadowBlur = 10;ctx.strokeStyle = 'yellow';

let isDrawing = false;

Fireflies.ai
Fireflies.ai

自动化会议记录和笔记工具,可以帮助你的团队记录、转录、搜索和分析语音对话。

Fireflies.ai 160
查看详情 Fireflies.ai

canvas.addEventListener('mousedown', (e) => {isDrawing = true;ctx.beginPath();ctx.moveTo(e.offsetX, e.offsetY);});

canvas.addEventListener('mousemove', (e) => {if (!isDrawing) return;ctx.lineTo(e.offsetX, e.offsetY);ctx.stroke();});

canvas.addEventListener('mouseup', () => {isDrawing = false;});

利用CSS混合模式增强视觉融合

仅靠Canvas绘制可能显得生硬。结合CSS的mix-blend-mode: multiply或screen,可以让马克笔颜色与底层内容自然融合。

应用场景:

将Canvas层置于文字上方设置Canvas的mix-blend-mode: screen,使重叠区域更亮,突出高亮感若背景复杂,可用overlay提升对比度

CSS样式示例:

.container {  position: relative;}

.text-content {font-size: 24px;color: #333;padding: 40px;}

canvas {

position: absolute;top: 0;left: 0;mix-blend-mode: screen; / 让黄色更通透亮眼 /}

优化体验的小技巧

为了让效果更贴近真实使用场景,可加入以下改进:

增加“清除”按钮,调用ctx.clearRect()重置画布提供颜色切换,让用户选择不同荧光色移动端支持:监听touch事件替代mouse事件保存绘制状态,便于后续导出图片

基本上就这些。通过Canvas控制绘制细节,再用CSS混合模式调整视觉融合,就能做出自然的马克笔高亮效果。不复杂但容易忽略blend mode的作用,合理使用能让整体质感提升不少。

以上就是HTML5代码如何制作马克笔效果 HTML5代码混合模式的应用实例的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1589052.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月23日 04:47:23
下一篇 2025年12月23日 04:47:33

相关推荐

发表回复

登录后才能评论
关注微信