PNG メタデータ・ICC は容量/プライバシー、sRGB は色ずれ対策。デザイナー・フロント素材・運用向けに ICC/sRGB 判断表、メタのみ・oxipng・pngquant 対照、リモート Mac バッチ、体積・透明・跨屏の閾値を整理。色彩管理・OpenClaw QA と併読。
① いつ ICC を剥がし、いつ sRGB を残すか(デザイン納品の意図)
ICC は契約事項です。削るなら sRGB ピクセルへの焼き込みと README 明記をセットに。無言削除はフロント/CMS の前提と食い違います。
| 納品シナリオ | ICC/カラータグ方針 | 理由 |
|---|---|---|
| Web/アプリ UI スライス、コンポーネントライブラリ | sRGB ICC を埋め込む、またはピクセルを sRGB に変換し「ICC なし」を仕様で明記 | P3 制作の彩度差を抑える。 |
| EC カタログ(アップロード時にプロファイル破棄の CMS) | sRGB ピクセルに焼く+ ICC は CDN 仕様に合わせて削除 | CDN/CMS の実挙動と整合。 |
| 印刷・パッケージパートナー(PNG は副次) | 合意プロファイルを維持、または TIFF/PDF マスターへ。サインオフなしに全面削除しない | 印刷は名付きプロファイル前提。 |
| 社内ステージング専用 | デバッグ用に EXIF+ICC 残しも可。/publish では削った版だけを出す |
社内は残し、公開は軽量版。 |
ツール側の語彙(sRGB/P3)を PNG 段で繰り返す。詳細は 色彩管理記事。
② メタデータのみ処理と無損失再圧縮の違い
メタデータのみは補助チャンク削除で zlib は不変、高速。oxipng は IDAT を無損失で再パック。典型フローは「exiftool 等 → oxipng」。「無損失」manifest に pngquant を混在させない。
③ 対照表:メタデータのみ・oxipng・pngquant
| アプローチ | 画素忠実度 | 典型的な容量削減 | 透明度 | 向いている用途 |
|---|---|---|---|---|
メタデータのみ(exiftool、チャンク選択削除) |
不変 | EXIF/XMP が重い場合に小〜中 | 不変 | プライバシー・CMS・写真由来 |
| oxipng(無損失) | デコード一致(ビット同一) | 中程度(テクスチャや粗い書き出しほど効く) | アルファ保持 | リモート Mac CI 本番レーン |
| pngquant(パレット化・損失) | 視覚的近似 | 大きくなることが多い | アルファは可だがグラデにバンディング | サムネ等、損失承認時のみ |
GUI 比較は ImageOptim vs CLI。ホストは oxipng 版固定推奨。
④ 無損失再圧縮パラメータ表(oxipng)
-o 上げると CPU 増、収穫逓減。M4 バッチは -o 3〜4 が目安。--strip safe は① の ICC 方針と矛盾しないか要確認。
| プリセット(概念) | フラグ例 | 時間/CPU | メモ |
|---|---|---|---|
| CI 高速ゲート | oxipng -o 2 --strip safe |
低 | 巨大ツリーの速いゲート |
| 本番デフォルト | oxipng -o 4 --strip safe |
中 | 本番デフォルト |
| 無損失最大圧縮 | oxipng -o max --strip safe(任意 --zc max) |
高 | リリース候補・CDN |
| 監査/デバッグ | oxipng -o 1(strip なし) |
低 | ベンダー元ファイルとの差分比較 |
⑤ EXIF とチャンク衛生(運用・プライバシー)
マーケ PNG に GPS・シリアル等が残りやすい。exiftool で機微タグ除去 → oxipng。著作権 XMP はホワイトリストで残す。
⑥ バッチコマンドテンプレート(リモート Mac)
brew install oxipng exiftool(損失レーンのみ pngquant)。版固定スクリプトで リモート Mac を再現。フォルダ構成は ウォッチフォルダ記事 と同様の考え方。
再帰・無損失(safe strip):
find ./publish_png -type f -name '*.png' -print0 \
| xargs -0 oxipng -o 4 --strip safe
並列(GNU parallel):
find ./publish_png -type f -name '*.png' \
| parallel -j "$(sysctl -n hw.ncpu)" oxipng -o 4 --strip safe {}
EXIF/XMP/IPTC を消し ICC は残す(Web 引き渡しでプロファイル必須の典型):
exiftool -q -m -EXIF= -XMP= -IPTC= -overwrite_original -ext png ./publish_png
find ./publish_png -type f -name '*.png' -print0 | xargs -0 oxipng -o 4 --strip safe
全メタ削除(ICC も落ちる——① で全面削除が承認されたときのみ):
exiftool -q -m -all= -overwrite_original -ext png ./publish_png
find ./publish_png -type f -name '*.png' -print0 | xargs -0 oxipng -o 4 --strip safe
任意の損失レーン(明示ラベル付き):
pngquant --quality=70-95 --speed 1 --ext .png --force 256 ./thumbs/*.png
損失出力をマスター PNG フォルダに混ぜない。
⑦ 検収閾値チェックリスト(ファイル体積・透明・跨屏抜き取り)
閾値は製品線で調整。EC は 白抜き QA と併用。
- 体積:無損失後は UI PNG で概ね 3〜15% 程度の縮小が多い。EXIF 大で変化小なら strip 失敗を疑う。40% 超減は損失混入の疑い。
- 透明:明暗背景でエッジ確認。ゴールデン 10 枚で回帰を固定。
- 寸法・色:manifest と一致。sRGB 案件は sRGB 機と P3 機でブランド色を抜き取り。
- 跨屏:0.5〜1%(最低約 15 枚)ランダム。1 件でもゲート外なら拡大検査。
- manifest:
oxipng --versionとフラグをハッシュと併記。
⑧ HowTo:実務 5 ステップ
- ① を README に掲載しフロントへリンク。
- ゴールデンで処理前バイト(重要作はチェックサム)。
- EXIF 方針 → 合意
-oの oxipng。損失は別ジョブ。 - CI で幅別サイズ上限・寸法・任意 PNG 検証。
- 跨屏抜き取り・manifest 添付のうえ CDN/CMS へ。
FAQ
Q. ICC 削除で容量は大きく減るか。
A. 多くは数 KB。本質はパイプライン整合+sRGB 焼き込み合意。
Q. 細線・文字も oxipng で安全か。
A. 無損失なら画素保持。ぼけは主に上流書き出し。
Q. 実行環境は。
A. 版固定 リモート Mac が熱制御と再現性に有利。
まとめ
README で ICC/sRGB を固定し、メタのみ・oxipng・承認時の pngquant を分離。テンプレと閾値で リモート Mac M4 夜間バッチへ。
次のステップ
技術インサイト一覧、ホーム。購入・レンタル(閲覧ログイン不要)、ご利用ガイド。関連:WebP/AVIF/PNG 混在検収。