imgctl.dll というフリーのDLLがあります。
http://www.ruche-home.net/
* BMP,RLE-BMP,JPEG,PNG,GIF形式画像ファイルの読み書き(相互変換)。
* PNG,GIFに関しては高度な設定での保存も可能。
* アニメーションGIFの保存も可能。
* DIBデータの24bit(フルカラー)/16bit(ハイカラー)/8bit(256色)化。
* 256色への減色処理は、市販ソフト程度の品質にはなるかと。
* DIBデータの色数計算。
* DIBデータの切り取り、貼り付け(共に上下左右反転自在)。
* DIBデータの回転(90度単位or任意角度)。
* DIBデータの淡色化、RGB度合い変更、RGB交換、指定色置換。
* DIBデータの画面(DC)への転送(内部でAPI関数StretchDIBitsを使用)。
* 画面(DC)からのDIBデータの取得(上下左右反転自在)。
* 画像データの形式の割り出し(今後、対応形式を増やしていく予定)。
ができる関数が入っています。
私はJPEGとGIFの読み書きに使わせて頂いていますが問題なく動作しています。