-1

イメージを引き伸ばさずに C# でイメージ (ビットマップ) のサイズを変更しようとしています。

画像が100x100ピクセルだとします。

ここに画像の説明を入力

私はそれを100x110ピクセルにして、余分なピクセルを追加した画像の下部に白い隙間を残します。

ここに画像の説明を入力

これを実行しましたが、ピクセル形式を指定する方法が見つかりません。私はそれが必要8bppindexedです。前後の画像を示す例を添付しました。

ここに私がこれまでに持っているコードがあります。

string visit2 = "C:\\users\\moorez\\desktop\\visit2.bmp";

Bitmap orig = new Bitmap(visit2);
int width = orig.Width;
int height = orig.Height;
int newHeight = height + 2;
Bitmap newImage = orig.Clone(new Rectangle(0, 0, width, height), System.Drawing.Imaging.PixelFormat.Format8bppIndexed);
newImage.Save("C:\\users\\moorez\\desktop\\visit3.bmp");

Bitmap test = new Bitmap(width, newHeight);
Graphics g = Graphics.FromImage(test);
g.DrawImage(newImage, new Point(0, 0));
test.Save("C:\\users\\moorez\\desktop\\visit4.bmp");
4

1 に答える 1

0

これを試すことができます

Bitmap bmp = new Bitmap(newImage.Width, newHeight);
Graphics g = Graphics.FromImage(bmp);
g.Clear(Color.White);
g.DrawImageUnscaled(newImage, 0, 0, newImage.Width, newHeight);
bmp.Save(@"C:\\users\\moorez\\desktop\\visit3.bmp", ImageFormat.Jpeg);
于 2013-06-18T19:18:17.063 に答える