アップロードせずに画像を圧縮するには?
品質レベルを設定すると、ツールがブラウザー内で画像を再エンコードし、圧縮の前後のファイルサイズを並べて表示するので、トレードオフをご自身で判断できます。何もアップロードされず、端末のメモリ以外にファイルサイズの上限はありません。
完全にブラウザ内で動作 · アップロードなし · アカウント不要 · 透かしなし
- JPEG、PNG、WebP のいずれかの画像を選びます。
- 出力形式を選び、品質スライダーを動かします。
- 圧縮して、削減されたサイズを確認してからダウンロードします。
JPEG、PNG、WebP。ファイルはこのページが読み込み、どこにも送信しません。
空欄のままにすると元の寸法を維持します。幅が超える画像は比率を保って縮小されます。
このページにできること
- 0.1 から 1.0 までの品質スライダー
- 元のサイズと圧縮後のサイズを並べて表示する
- 任意の最大幅、比率を保った拡縮
- ファイルはアップロードされない
このツールを使うべき場面
- アップロードフォームにファイルサイズの上限があり、多少の画質低下が許容できるとき。
- 画像をウェブページに載せる前に小さくしたいとき。
- 前後のサイズをすぐ確認して、結果を採用するかどうか決めたいとき。
別の方法を選ぶべき場面
- 可逆な最適化や、目標バイトサイズの正確な制御が必要な場合。このツールはサイズではなく品質を指定する作りです。
- EXIF の向き、ICC プロファイル、メタデータ、アルファの扱いを保持する必要がある場合。
- 色数の少ない PNG が元データの場合。Canvas を通した再エンコードで大きくなることがあります。
他の方法との違いと限界
mozjpeg、oxipng、Squoosh といった専用のエンコーダーは、可逆な最適化、プログレッシブ JPEG、パレット削減、そしてはるかに優れたサイズと品質のトレードオフを実現できます。ブラウザーの Canvas エンコーダーにはそうした調整手段がなく、ここでの PNG は真の最適化ではなく再エンコードです。だからこそこのページは削減量を約束せず、前後のサイズを表示します。大きくなってしまったら、元のファイルをそのまま使うか、専用のエンコーダーを使ってください。
あなたのファイルはどこへ
どこへも行きません。このページは処理を行うコードを読み込み、それ以降、あなたが開いたファイルはあなた自身のブラウザが読みます。アップロードの手順も、サーバー上の一時コピーも、信じる必要のある後片付けもありません。データはネットワークを一度も渡らないので、後から消すものは何も残りません。自分で確かめられます。ツールの実行中にブラウザのネットワークパネルを開いて、何も通信しないことを見てください。
このツールについての質問
- 画像はどのくらい小さくなりますか?
- 画像と選んだ品質に完全に依存するため、このページは数値を約束せず、実際の値を表示します。写真は品質 0.7〜0.8 の WebP や AVIF で大きく縮むことが多く、目ではほとんど気づかない細部が捨てられるためです。PNG で保存したスクリーンショットはほとんど変わらないこともあり、最適化済みの JPEG を再エンコードすると逆に大きくなることもあります。
- 形式が PNG だと品質スライダーが効かないのはなぜですか?
- PNG は可逆形式で品質というパラメーターを持たないため、ブラウザーは値を無視します。ファイルサイズを調整したい場合は JPEG、WebP、AVIF を選んでください。正確な画素や透過が必要なときは、PNG が今でも正解です。
- 圧縮すると EXIF データやカメラの回転情報は残りますか?
- いいえ。キャンバスは見えている画素だけを再エンコードするので、カメラの機種、GPS 位置、撮影日時といったメタデータは失われます。ブラウザーはデコード時に EXIF の向き情報を適用するため、出力は正立したままですが、それ自身はメタデータを持ちません。
同じグループの他のツール
ガイド
- How to compress an image without losing visible qualityRe-encode a JPEG, PNG or WebP at a quality you choose, with the before and after size side by side. Runs in your browser.
- JPG, PNG, WebP or AVIF: which format, and how to convertWhat each image format is actually good at, and how to convert between them in your browser with the encoder you already have.