PNG→JPG変換

PNG画像をJPG形式に瞬時に変換します。品質を調整し、透明度の背景色をカスタマイズして、バッチ変換します。ファイルがデバイスを離れることはありません。

ファイルはお使いのデバイスから出ません
ここにPNGファイルをドロップ またはクリックして参照

PNGをサポート · 各最大50 MB

"PNGをJPGに"が実際にあなたの画像に行うこと

PNGとJPEGは、異なる役割を持つ2つの異なる画像形式のファミリーです。PNG(Portable Network Graphics、1996年のIETF RFC 2083、2023年のW3C第3版)はDEFLATE圧縮(ZIPとgzipと同じロスレスアルゴリズム)を使用し、すべてのピクセルをビット精密に保ち、透明度のために8ビットのアルファチャネルをサポートします。JPEG(1992年のISO/IEC 10918-1)は調整可能な品質を持つロッシーDCT圧縮を使用し、アルファチャネルを持たず、連続トーンの写真用に調整されています。PNGをJPEGに変換するとは: アルファチャネルを破棄し、ピクセルデータをロッシーエンコーダーに通し、通常はより小さなファイルと普遍的な互換性と引き換えにトレードオフを受け入れることを意味します。

透明度の喪失は最も目に見える変化です。PNGは各ピクセルを完全に不透明、完全に透明、または間のどこかとしてマークできます。JPEGには等価物がありません: すべてのJPEGピクセルは完全に不透明です。このツールは、エンコードする前に、あなたが選択する背景色(デフォルトでは白、黒、またはカラーピッカー経由のカスタム色)に対してPNGを合成するので、ソースの透明な領域は出力でその背景色になります。JPEGが書き込まれると、アルファチャネルは永久に失われます。回復することはできません。

ファイルサイズの方向は、ほとんどの人が想定するものではありません。写真PNGの場合(ポートレート、風景、忙しいシーン)、JPEG出力はソースより5-10倍小さくなります: これは期待される勝利です。グラフィックPNGの場合(ロゴ、イラスト、スクリーンショット、大きな平らな色の領域を持つもの)、JPEG出力はしばしばソースPNGより大きくなります。PNGのDEFLATEは、同一の色の長いランをほぼ何もないものに圧縮します; JPEGのDCTはそれらの滑らかな領域にノイズを注入し、高頻度の色境界をビットを消費する可視のハローに量子化します。50 KBのロゴPNGは200 KBのJPEGを生成できます。あなたの画像がほとんど平らな色と鋭いエッジである場合、JPEGは間違った方向です; PNGに留まるか、両方のモードをうまく処理するWebPに変換してください。

このツールの内部での動作

変換はHTML5 Canvas 2D APIに加えて、マルチファイルバッチ用のJSZip(Stuart Knightley、MIT/GPLデュアルライセンス)です。すべてのブラウザがPNGをネイティブにデコードするため、外部デコーダーは必要ありません。PNGをドロップすると、File APIがバイトを新しいHTMLImageElementに渡します; ブラウザはDEFLATE符号化されたPNGビットストリームを生のRGBAピクセルに解凍し、アルファチャネルを保持します。

メモリ内の新しいは画像にサイズ変更され、ctx.fillRect()経由で選択した背景色で塗りつぶされます。PNGはctx.drawImage()でその上に描画されます; デフォルトのsource-overコンポジットモードは、PNGのアルファをキャンバスの背景に対してブレンドするので、透明なピクセルは背景色を示し、半透明のエッジはスムーズにブレンドされます。そのコンポジットの後、canvas.toBlob('image/jpeg', quality/100)がブラウザの組み込みJPEGエンコーダーを呼び出します。エンコーダーはRGBAをYCbCrに変換し、オプションのクロマサブサンプリングを適用し、品質スライダーに一致するテーブルで8x8 DCTと量子化を実行し、JPEGバイトストリームを出力します。

単一ファイルの場合、出力Blobは直接ダウンロード可能なオブジェクトURLになります。マルチファイルバッチの場合、JSZipは各JPEG出力を収集し、ブラウザが単一のダウンロードとして提供する単一のZIPアーカイブにパッケージ化します。タブを離れるものは何もありません。唯一のネットワークトラフィックは最初のページロードとJSZipライブラリ(最初の訪問で約95 KB、その後キャッシュ)です。変換中にDevToolsのネットワークタブを開きます: 画像データを運ぶリクエストはありません。ページがロードされた後にブラウザを機内モードに切り替えると、コンバーターはローカルのPNGで動作し続けます。

PNGとJPEGの簡単な歴史

仕組み

  1. PNGをアップロード: 変換する1つ以上のPNGファイルをドロップまたは選択します。
  2. カスタマイズ: 品質(60〜100%)を調整し、透明エリアの背景色を選択します。
  3. 変換: 「JPGに変換」をクリックします。個々の画像は直接ダウンロードされ、複数のファイルはZIPにグループ化されます。

なぜPNGをJPGに変換するのか?

JPGは多くの色を含む複雑な写真画像で優れた損失のある画像形式です。PNGよりも小さいファイルを生成するため、ウェブ、メール添付、迅速な共有に最適です。写真、イラスト、透明性が不要な画像に最適です。PNGは、透明性または損失なしの品質を必要とするグラフィックスには引き続き好ましいです。

機能

現実世界のPNGからJPGへのワークフロー

よくある落とし穴とその意味

プライバシー: 画像はデバイスを離れません

すべてのクラウドベースのPNGからJPGへのコンバーター(CloudConvert、Convertio、iLoveIMG、FreeConvert、TinyJPG、および数十の"png to jpg online"サービス)は、あなたのファイルを運営者のサーバーにアップロードし、変換を実行し、JPEGをダウンロードとして返します。PNGファイルには、知らない人のハードドライブにコピーされたくないコンテンツが日常的に含まれます: 内部インターフェースと機密文書のスクリーンショット、IDカードと税フォームのスキャン、NDAの下のイラスト、まだリリースされていないデザインモックアップ、顔がはっきりと見える家族写真。ほとんどの運営者は、アップロードを1〜2時間以内に削除し、転送中に暗号化することを約束するプライバシーポリシーを公開しており、大規模な運営者はISO/IEC 27001認証を保持しています。それらのポリシーを尊重する強い商業的理由があります。しかし、"1時間以内に削除"は"決して見られない"ではありません。その1時間の間、画像コンテンツは運営者のインフラストラクチャに置かれ、適切な権限を持つあらゆるプロセスまたは人物がアクセス可能であり、適用される保持ポリシーに従ってログとバックアップで表示されます。

このコンバーターは何もアップロードしません。パイプライン全体(ファイル選択、ブラウザの組み込みデコーダーによるPNGデコード、背景色に対するCanvasコンポジット、JPEGエンコード、オプションのZIPパッケージング、ダウンロード)は、JavaScriptとHTML5 Canvas APIを使用してブラウザタブ内で実行されます。アップロードなし、画像データを運ぶネットワークリクエストなし、ログエントリなし。変換前にブラウザの開発者ツールをネットワークタブに開くことで確認できます: 画像コンテンツでリクエストは発射されません。唯一のネットワークトラフィックは、最初のページ読み込みと小さなJSZipライブラリ(約95 KB)で、最初の訪問時に1度ロードされてその後キャッシュされます。ページがロードされた後にブラウザを機内モードに切り替えると、コンバーターはローカルのPNGで動作し続けます。

別のツールが正しい選択である場合

よくある質問

PNGの透明エリアはどうなりますか?

JPGは透明性をサポートしていません。透明エリアを埋める背景色(白、黒、またはカスタム)を選択できます。この色は変換中に透明性を置き換えます。

どの品質を使用すべきですか?

ほとんどの用途では、85〜90%の品質が、目立つサイズ削減を伴う良好な視覚レンダリングを提供します。プロの写真には90%+、一般的なウェブ用途には75〜85%、サムネイルとプレビューには60〜75%を使用します。

複数のファイルを一度に変換できますか?

はい。複数のPNGをアップロードし、すべてに同じ品質と背景設定を適用します。単一のファイルは直接ダウンロードされ、複数のファイルは自動的にZIPアーカイブにグループ化されます。

ファイルサイズの制限は?

各PNGは最大50 MBまで処理できます。総サイズはブラウザの利用可能なメモリに依存しますが、通常は累計数百MBを変換できます。

画像はサーバーに送信されますか?

いいえ。すべての変換はCanvas APIを介してブラウザ内でローカルに行われます。画像がデバイスを離れることはなく、プライバシーとセキュリティが保証されます。

より頻繁に尋ねられる質問

なぜ私のJPG出力がPNG入力より大きいのですか?

なぜならあなたのPNGが写真ではなくグラフィックコンテンツだからです。PNGのDEFLATE圧縮は、大きな平らな色の領域を非常にうまく処理し、しばしばそれらをピクセルあたりわずか1バイトの一部に縮小します。JPEGのDCT圧縮は、連続トーンの写真用に調整されています; 滑らかな領域にノイズを注入し、鋭い色のエッジをビットを消費する可視のハローに量子化します。50 KBのロゴPNGは、ロゴのエッジ周りのハローアーティファクトを完備した200 KBのJPEGになる可能性があります。ロゴ、スクリーンショット、イラスト、図、または任意の平らな色のグラフィックの場合、PNGに留まり(または両方のモードをうまく処理するImage Converter経由でWebPに変換)。JPEGは写真コンテンツの場合のみ正しい宛先です。

アルファチャネルはどうなりますか?

永久に失われます。JPEGには形式仕様にアルファチャネルがありません。このツールは、エンコードする前に、選択する背景色(デフォルトでは白、または黒、またはカラーピッカー経由の任意のカスタム色)に対してPNGを合成するので、透明なピクセルは背景色になり、半透明のエッジは背景にブレンドされます。JPEGが書き込まれると、元の透明度を回復することはできません; ソースPNGに戻る必要があります。透明度を保持する必要がある場合、実際に望む変換はPNGからWebP(ロッシーまたはロスレス)であり、PNGからJPEGではありません。

白、黒、またはカスタムの背景色を使用するべきですか?

画像が表示される場所と一致させます。白いページに座るJPEG(ほとんどの文書、明るいテーマのほとんどのウェブサイト、ほとんどのメール)の場合、白が正しい選択でありデフォルトです。暗い背景に座るJPEG(暗いテーマのウェブサイト、暗いプレゼンテーションスライド、黒のドキュメンタリーフレーム)の場合、黒が溶け込みます。それ以外のすべてには、カスタムカラーピッカーを使用し、宛先の正確な背景色と一致させます。選択された背景と実際の宛先の間の不一致は、画像の以前透明だったエッジ周りに可視の色付きフリンジを生成します。

このツールはオフラインで動作しますか?

はい。PNGデコーダーとJPEGエンコーダーはどちらもすべてのブラウザに組み込まれています; それらのために外部ライブラリはダウンロードされません。このツールがロードする唯一のライブラリは、マルチファイルバッチをZIPアーカイブにパッケージ化するためのJSZip(約95 KB)で、最初のロードでCDNから1度フェッチされてキャッシュされます。後続の訪問は完全にオフラインで動作します。ページを一度開いてからローカルのPNGファイルを変換した後、機内モードを有効にすることで確認できます。

EXIFメタデータは保持されますか?

いいえ。Canvasベースの再エンコードは、EXIF、IPTCおよびXMPメタデータブロック(カメラモデル、露出、GPS座標、著作権タグ)を埋め込まれたICCカラープロファイルと共に削除します。出力JPEGはピクセルデータのみを運びます。通常のスクリーン共有では、これは通常プライバシーの勝利です(GPS座標とデバイスシリアル番号は漏れません)。メタデータを保持する必要があるアーカイブワークフローの場合、メタデータ対応のデスクトップツールを使用してください: -defineオプション付きのImageMagick、または-copy all付きのjpegtran、またはPhotoshopのExport As、これらすべてがEXIFとICCを保持できます。

デスクトップまたはコマンドラインの同等品はありますか?

いくつか。バッチ自動化には、Node.jsのsharpが標準のサーバーサイドライブラリです: sharp(buf).flatten({background:'#fff'}).jpeg({quality:90}).toBuffer()。任意のシェルでImageMagick: magick input.png -background white -flatten -quality 90 output.jpg。PythonのPillow: Image.open(p).convert('RGB').save(out, 'JPEG', quality=90)。このツールのようなワンオフのインタラクティブ作業には、Squoosh(Google Chrome Labs、これもクライアントサイド)が最も近いブラウザの代替であり、AVIFを含むより多くの出力形式をサポートします。Photoshop、Affinity PhotoおよびmacOSのPreviewはデスクトップGUIケースを処理します。

関連ツール