DOBON.NET DOBON.NETプログラミング掲示板過去ログ

Jpeg画像を指定したファイルサイズまで小さくできる?

環境/言語:[C# .NET1.0 VS.NET2002]
分類:[.NET]

とある画像管理ソフトを作っているのですが、このソフトにJpeg画像を取り込む際
にあらかじめ設定しておいた(iniファイルなどに)ファイルサイズまでファイルサイズ
を落としたいのですが、このような事はC#で実現可能でしょうか?
> とある画像管理ソフトを作っているのですが、このソフトにJpeg画像を取り込む際
> にあらかじめ設定しておいた(iniファイルなどに)ファイルサイズまでファイルサイズ
> を落としたいのですが、このような事はC#で実現可能でしょうか?

品質変更を行わず品質変更後のサイズを知る方法は(少なくともクラスライブラリには)ないようなので、実際に変更を行い、得られたサイズを目標サイズと比較するということを繰り返していくというのはどうでしょうか。

http://dobon.net/vb/dotnet/graphics/encoderparameters.html
こちらのTipにJpeg画像の品質を指定してファイルに保存する方法がありますが、このSaveメソッドは出力先としてストリームを指定することもできるので、MemoryStreamなどに出力して、ストリームのサイズと目標サイズを比較し、条件を満たしていればファイルに出力・そうでなければ品質を落として変更しなおして再び比較、という方法はどうでしょう。

DOBON.NET | プログラミング道 | プログラミング掲示板