2011-01-03 26 views
22

Tôi đang cố gắng tạo tệp PNG bằng C#. Tất cả mọi thứ tôi google có vẻ là WPF liên quan. Vấn đề của tôi là, tôi cần tạo một hình vuông PNG 50x50 đầy màu xanh lá cây trong .NET 2.0.Cách tạo tệp PNG bằng C#?

Câu hỏi của tôi là, làm cách nào để thực hiện việc này? Tôi đã tìm trong không gian tên System.Drawing. Nhưng sau tất cả điều đó, tôi cảm thấy mình đang đi. Ai đó có thể cho tôi một số gợi ý không?

Trả lời

42

Bạn có thể tạo một bitmap với kích thước bạn muốn, sau đó tạo ra một đối tượng Graphics để có thể vẽ trên bitmap. Phương pháp Clear là cách đơn giản nhất để tô màu hình ảnh. Sau đó lưu hình ảnh sử dụng định dạng PNG:

using (Bitmap b = new Bitmap(50, 50)) { 
    using (Graphics g = Graphics.FromImage(b)) { 
    g.Clear(Color.Green); 
    } 
    b.Save(@"C:\green.png", ImageFormat.Png); 
} 
9

Đây là mã dành cho bạn:

Bitmap bmp = new Bitmap(50,50); 
Graphics g = Graphics.FromImage(bmp); 
g.FillRectangle(Brushes.Green, 0, 0, 50, 50); 
g.Dispose(); 
bmp.Save("filepath", System.Drawing.Imaging.ImageFormat.Png); 
bmp.Dispose(); 
1

Bạn có thể tạo tập tin png bằng cách sau -

FileInfo fi = new FileInfo(@"D:\bango.png"); 
FileStream fstr = fi.Create(); 
Bitmap bmp = new Bitmap(50, 50); 
bmp.Save(fstr, ImageFormat.Png); 
fstr.Close(); 
fi.Delete();