ストリームからの画像を操作するための次のコードがあります。私の意図は、そのサブリージョンを選択して、100x100にサイズ変更することです。画像のフォーマットは事前にわかりません。
var image = new Bitmap(stream);
var destArea = new Rectangle(0, 0, 100, 100);
var srcArea = new Rectangle(x, y, width, height);
var gfx = Graphics.FromImage(image);
gfx.DrawImage(image, destArea, srcArea, GraphicsUnit.Pixel);
var ms = new MemoryStream();
image.Save(ms, image.RawFormat);
何らかの理由で、これは必要なサブ領域を取得し、サイズを変更して元の画像の上に配置することで、元の結果と目的の結果が混在する結果になります。
私はいくつかのガイド、画像処理に関する投稿を経験しましたが、どこが間違っているのかまだわかりません。手伝ってくれませんか。
また、私が欠けているのは何であるか(コードの背後にある少しの理論)も説明していただければ幸いです。
ありがとう!