画像ウォーターマークツール
テキスト/画像ウォーターマークを追加、位置・透明度・サイズ調整可能
画像をここにドラッグ、またはクリックしてファイルを選択
JPG、PNG、WebP、BMP形式対応、複数選択可能
画像ウォーターマークとは?
画像透かしツールは、写真の上にテキスト、ロゴ、別の画像を重ね、著作権、出典、ブランド、使用状態、公開文脈を示すためのツールです。商品写真、ポートフォリオ、イベント写真、研修資料、SNS 投稿、承認前のプレビューなどで使われます。重要なのはバランスで、透かしは無断利用を抑える程度に見える必要がありますが、被写体や細部を隠しすぎると画像の価値が下がります。位置、不透明度、サイズ、繰り返し、角度を画像に合わせて調整することが大切です。処理はブラウザー内で行われます。
使い方
使い方
- 画像をドラッグまたはクリックしてアップロード(複数対応)
- ウォーターマークの種類を選択:テキストまたは画像ウォーターマーク
- ウォーターマークの内容、位置、不透明度、サイズ、回転角度を設定
- 「ウォーターマーク追加」ボタンをクリックし、プレビューしてダウンロード
ウォーターマークの確認事項
- 異なる画像サイズでプレビューしてください。大きな画像では鮮明に見えるウォーターマークも、サムネイルでは強すぎたり読めなくなったりする場合があります。
- 後から位置、不透明度、文言を変更できるよう、ウォーターマークなしの元画像を保存してください。
利用シーン
仕組み
ウォーターマークの付与は完全に 2D Canvas 上で行われます。ソース画像は ctx.drawImage を通じてネイティブピクセル寸法の HTMLCanvasElement に描画され、テキストまたはロゴがその上に合成されます。テキストには ctx.fillText、ラスターオーバーレイには 2 回目の drawImage 呼び出しが使用されます。不透明度は ctx.globalAlpha で制御され、後続するすべてのアルファチャンネルに乗算されます。50% 透過の PNG に対して globalAlpha を 0.5 にすると最終ピクセルは 25% になるため、「ウォーターマークが見えない」というバグ報告の最も一般的な原因となります。 配置には標準的な Canvas 変換が使用されます。ctx.translate で原点を配置アンカー(左上、右上、中央、右下、または 3×3 グリッドの各セル)に移動し、ctx.rotate(angle) でその原点を中心にダイアゴナルスタンプを傾け、描画呼び出しでオフセットなしにマークを配置します。タイル敷きウォーターマークは回転したソースで CanvasPattern.createPattern を呼び出し、ctx.fillRect でキャンバス全体に描画するため、ソース寸法に関係なく均等な間隔で FULL PAGE DRAFT ストライプを維持できます。フォントメトリクスは ctx.measureText から CSS ピクセルで報告されるため、2x ディスプレイでプレビューに収まる 28px ラベルは 1x モバイル書き出しでは切り取られる場合があります。 エクスポートステップでは 'image/png'、'image/jpeg'、または 'image/webp' と非可逆形式用のオプション品質パラメータを指定して canvas.toBlob を呼び出します。キャンバスはソース解像度で動作するため、出力は元のピクセル寸法を保持しますが、ソースの EXIF 向き、ICC プロファイル、その他のメタデータは含まれません。約 30 を超える大きなファイルのバッチでは UI スレッドがブロックされます。toBlob は非同期ですが、描画スタックはメインスレッドで同期的に実行されるため、重いワークロードは OffscreenCanvas を使用した Web Worker への移動が有効です。
- 合成スタック:ベースに ctx.drawImage、マークに ctx.fillText(または 2 回目の drawImage)、透過乗算に ctx.globalAlpha。
- アルファ計算:globalAlpha は各ピクセルの既存アルファに乗算されるため、0.5 アルファの PNG 上の 0.5 マークは 0.5 ではなく 0.25 として描画されます。
- 回転:ctx.translate でアンカーに移動、ラジアン単位の ctx.rotate(angle)、その後原点 (0,0) で描画すると変換が配置ポイントを中心に維持されます。
- タイル敷き:createPattern は CanvasPattern を返し、fillRect でキャンバス全体に塗りつぶせるため、任意のソース寸法で均一な間隔を維持します。
- テキストメトリクス:measureText は CSS ピクセルで報告するため、2x プレビューでサイズ指定したラベルは 1x モバイル書き出しで画像エッジからはみ出す場合があります。迷ったときはキャンバス幅に比例させてください。
- エクスポート:toBlob('image/png' | 'image/jpeg' | 'image/webp', quality) はソース解像度を保持しますが EXIF と ICC を除去します。縦横の正確さが重要な場合は、描画前に EXIF 向きに基づいて回転してください。
使用例
右下に著作権テキスト
種類: テキスト透かし
テキスト: "(c) 2026 ToolAct Studio"
フォント: 28 px、白 (#FFFFFF)
位置: 右下
不透明度: 50%
用途: ポートフォリオ写真、ブログのヒーロー画像全面にタイル状の斜め配置「DRAFT」マーク
種類: テキスト透かし、タイル配置
テキスト: "DRAFT - DO NOT SHARE"
フォント: 48 px、ライトグレー (#CCCCCC)
回転: -30 度
不透明度: 25%
タイル間隔: 200 px
用途: クライアントレビュー時の未公開商品写真PNG ロゴを左上に 15% スケールで配置
種類: 画像透かし
透かしファイル: brand-logo.png (背景透過)
位置: 左上、20 px の余白
スケール: 元画像幅の 15%
不透明度: 80%
結果: 1920 px のヒーロー画像上でロゴは 288 px 幅で表示商品写真 30 枚を一括処理
入力: JPG 商品写真 30 枚、各 2000 x 2000 px
透かし: テキスト "shop.toolact.com"
位置: 下部中央、余白 40 px
不透明度: 60%、出力形式: JPG、品質 92
処理時間: 約 8 秒、出力合計: 24 MBよくある質問
画像はウォーターマーク処理のためにアップロードされますか?
いいえ。ウォーターマークはブラウザ内のcanvasを使って画像に合成されます。元のバイトデータも、ウォーターマーク付きの出力も、デバイスから外に出ることはありません。
対応しているウォーターマークのスタイルは何ですか?
テキストウォーターマーク(任意の文字列、フォントサイズ、色、不透明度、回転、全面を覆うタイル/繰り返し)と画像ウォーターマーク(任意の位置と不透明度で重ねる自社ロゴなど)に対応しています。多くのビルドでは両方を同時に使えます。
ウォーターマークはどこに配置すべきですか?
コーナー配置(通常は右下)は最も目立ちにくいですが、簡単にクロップで除去されてしまいます。画像全体に敷き詰めたウォーターマークはきれいに除去するのが難しい反面、見た目を損ないます。中央の半透明ウォーターマークは両者のバランスを取ります。可読性と著作権保護のどちらを優先するかで選択してください。
ウォーターマークは除去できますか?
本気の攻撃者なら、特に背景が均一な写真の場合、コーナーのウォーターマークはクロップやコンテンツアウェア塗りつぶしで除去できることが多いです。タイル状の半透明ウォーターマークはより難しくなります。除去できないウォーターマークは存在しません。実際の保護ではなく、抑止力や著作権の表示として捉えてください。
出力フォーマットと品質はどうなりますか?
PNGはウォーターマークの輪郭をくっきりと保持します(線画やスクリーンショットに推奨)。JPEGは結果を再エンコードするためウォーターマークが少しぼやけることがあります。きれいに出力するには品質90以上を選んでください。ページからフォーマットと品質を選択できます。
EXIFやメタデータは保持されますか?
ほとんどの場合は保持されません。canvasベースの処理では通常、EXIFやICCプロファイルデータが破棄されます。これはプライバシーの利点(カメラのメタデータ、GPS位置情報、タイムスタンプが除去される)になりますが、ウォーターマーク付きのコピーは鑑識用のオリジナルではなくなります。
複数の画像にまとめてウォーターマークを付けられますか?
はい。複数のファイルをドロップすると、それぞれに同じウォーターマークが適用されます。バッチサイズはブラウザのメモリで制限されます。非常に大きなバッチは処理を遅くしたり、モバイルではメモリ不足になったりすることがあります。安定して処理するには20〜50枚ずつのチャンクで処理してください。