添加水印转图片

选一张本地图片,填水印文字,调位置、透明度和字号,本页用 Canvas 在浏览器里把字叠上去并导出 PNG。原图不会上传服务器,适合给照片加版权、给截图加署名。

使用方法

添加水印转图片是「传图、写字、调样式、导出」四步:

  1. 「选择图片」挑一张本地图;不传也有示例图可先试。
  2. 「水印文字」填要叠的字,演示值 柳泉工具 · 示例水印。
  3. 「位置」选右下角、居中或平铺;「透明度」「字号」「颜色」按喜好调,演示透明度 45、字号 28、白色。
  4. 点「生成水印」看预览,满意点「导出 PNG」下载;想换回演示按「载入示例」。

添加水印转图片能解决什么

它解决「不想装 PS、只想快速盖个标」的需求,适合三类场景:

  • 版权署名:照片右下角盖半透明白字,既表明归属又不挡主体,演示透明度 45 在浅底深底上都可读。
  • 截图标注:给教程截图加「内部资料」「草稿」字样,平铺模式能铺满整图防截走冒用。
  • 批量风格统一:同一套字号与颜色反复用在系列图上,保证品牌视觉一致;导出的 PNG 可直接进下一道图片压缩流程。

本页不做的事:不加图片水印(只加文字);不做旋转、裁剪、压缩(那些是别的工具);不保证水印「去不掉」——它只是视觉叠加,别人仍可能裁掉或修掉。需要更强保护请加水印同时降分辨率或加盲水印。

原理和变量

① 用了哪个具体函数:绘制用 Canvas 2D 的 ctx.drawImage 贴原图,再 ctx.fillText 写水印;透明度用 ctx.globalAlpha = 透明度÷100;测量宽度用 ctx.measureText 定位右下角。导出用 canvas.toBlob 生成 PNG。

② 关键参数为什么这样取:透明度除以 100 是因为 HTML 的 globalAlpha 是 0~1 的小数,45 表示 45% 不透明;右下角用 宽 − 文字宽 − 16 留 16 像素边距,避免贴边被裁。字号直接取像素,和导出图分辨率一致,放大原图时水印也随之清晰。

③ 遵循哪个标准:Canvas 2D 与 PNG 导出遵循 W3C Canvas 规范与 RFC 2083(PNG);文字渲染用系统字体,跨浏览器一致。所有像素操作在本地,不依赖服务器编解码。

④ 输入怎么变成输出:原图先等比缩到最大边 900 像素(演示示例图是 480×300 的纯色板),再在其上用 globalAlpha=0.45 写 28px 白字;右下角坐标 = (480 − 文字宽 − 16, 300 − 16),预览即所见即所得。

⑤ 边界与阈值:透明度限 0~100(0 全透明等于没加,100 实色盖死);字号 8~120;颜色任意十六进制;原图过大时先缩到 900 边再画,避免移动端内存爆掉。非图片文件会被拦下提示。

⑥ 常见误用的正确解释:透明度 100 不是「最清楚」而是「完全不透明盖住底下」,想半透就填 30~60;平铺模式文字密集会糊,适合防伪不适合美观;导出 PNG 不会保留原图 EXIF 等信息,属正常丢弃。

完整示例(数值仅作演示)

示例图 480×300,水印 柳泉工具 · 示例水印,右下角、透明度 45、字号 28、白色。

  • 原图:纯色示例板 480×300(无上传时占位用)。
  • 水印绘制:globalAlpha = 0.45,白字 28px,右下边距 16 像素。
  • 预览:右下角出现半透明署名,主体区基本不被遮挡。
  • 导出:点「导出 PNG」得到一张 480×300 的带水印 PNG。

上传真实图片后,以上参数原样套用,仅画布尺寸随原图变化。

输入范围与对照表

添加水印转图片的对照表给出常见场景的位置与透明度建议,方便你直接套:

水印位置与透明度建议(按用途)
用途推荐位置推荐透明度备注
照片版权右下角40不挡主体
截图署名右下角50浅底也清晰
教程标注居中60醒目提示
防伪铺底平铺25密集难裁
品牌统一右下角45系列一致
草稿标记平铺30防冒用
电商主图右下角35留白处
社交分享居中55强存在感
证件打码居中100完全盖住
艺术水印平铺20低存在
海报落款右下角70接近实色
缩略图右下角50小图可读

对照表是经验值,最终以预览为准;透明度过低的字在深底上可能看不清,建议先在示例图试。

结果边界和舍入

舍入位置:字号与透明度都是整数输入,直接用于绘制,无小数舍入;画布尺寸按「最大边 900」等比缩放,可能得到非整数像素,浏览器会自动抗锯齿。

什么时候会提示:选了非图片文件会提示「请选择图片文件」;透明度/字号超出范围会夹回上下限再画;文字为空则只出原图不出字。

导出性质:导出的是位图 PNG,放大不清晰;不保留原图 EXIF、图层与矢量信息。若要再压缩体积,请用图片压缩工具接力。

隐私:原图通过 FileReader 读进内存,全程不发起网络请求,关闭页面即释放。

常见问题

水印能去掉吗?

本工具只做视觉叠加,不嵌入盲水印,别人用修图软件可能裁掉或抹掉。需要强保护请同时降低分辨率或加密分享。

为什么透明底上看不清?

白字在白底上当然看不清。把颜色改成深色,或把透明度调到 70 以上;也可换居中位置离开空白区。

能加图片水印吗?

本页只支持文字水印。需要 Logo 水印请先把 Logo 当图片处理,或后续版本再补。

导出的图怎么变小了?

为兼顾手机内存,原图先缩到最大边 900 像素再绘制;若你要原尺寸,请在上传更大图时接受此限制,或后续用无损流程。

平铺模式太密怎么办?

平铺按字号网格重复,字号调大间隔就大;透明度调到 20~30 可降低视觉干扰,适合防伪而非美观。

我的照片会被上传吗?

不会。图片用 FileReader 在本地读取,绘制与导出都在浏览器内,可在 Network 面板复查,没有任何请求发出。

支持透明背景 PNG 吗?

支持。上传带透明底的 PNG,水印会叠在像素上,导出仍保留透明区域(文字之外的部分透明)。

字号最大 120 够吗?

120 像素对 900 边图已足够醒目;更大的字会被画布裁切,所以上限设 120。需要超大字请先用更大原图。

相关工具