
ADGuider
广告案例搜索平台,提供品牌策划、营销创意、文案等精选案例。
RoughNotation 是一个轻量级 JavaScript 注解库,专注于在网页上生成并动画化手绘风格的标记效果。它不依赖任何框架,体积控制在数 KB 级别,适合嵌入各类 Web 项目中使用。
该库提供六种基础注解形态,覆盖常见的内容强调场景:
| 类型 | 效果说明 |
|---|---|
| 下划线 | 在文本下方绘制手绘线条 |
| 高亮 | 以手绘色块覆盖文本背景 |
| 圆圈 | 围绕目标区域绘制不规则圆形 |
| 方框 | 绘制手绘风格的矩形边框 |
| 删除线 | 在文本上绘制贯穿线条 |
| 括号 | 在目标两侧添加手绘括号 |
所有注解均支持入场动画,可通过配置项调整动画时长、延迟时间和缓动效果。动画基于 SVG 路径的描边模拟手写过程,视觉上接近真实笔触的生成节奏。
用户可自定义线条颜色、粗细、填充色、边距等视觉参数,也可关闭手绘抖动效果,获得规整的几何线条。样式配置以对象形式传入,与主流前端开发习惯一致。
import { annotate } from 'rough-notation';
const annotation = annotate(document.querySelector('#target'), {
type: 'underline',
color: '#e74c3c',
strokeWidth: 2,
padding: 4,
});
annotation.show();
annotate 函数接收目标元素和配置对象,返回注解实例。调用 show() 触发动画,hide() 可反向播放动画移除注解。
该库适合用于:
由于注解以 SVG 绝对定位层叠在目标元素上方,需注意目标元素的位置属性与页面滚动时的坐标同步。对于高频动态变化的布局,建议在每次显示前重新计算位置或重建注解实例。







