2014-02-18 47 views
3

我想通過加載8位灰度級位圖文件(通常爲BMP)並將其轉換爲二維字節來啓動C#的控制檯應用程序數組,其中(如你所期望的)位置x處的字節,y是像素x,y的強度。然後我有很多代碼將作爲數組的位圖做一些工作。如何在.NET控制檯應用程序中加載位圖文件

麻煩的是,我已經看到這個WPF模塊調用完成,而這些調用只是在控制檯應用程序中不可用。例如,我不想使用System.Windows.Media.Imaging

有沒有人有任何建議,我可以做到這一點沒有太多的麻煩?

+1

使用'System.Drawing.Bitmap' –

回答

0

使用獲取圖像文件路徑的System.Drawing.Bitmap ctor。

+0

這對我很有用。 – user1741137

6

您可以將System.Drawing.dll程序集添加到項目參考中。然後你可以使用System.Drawing.Bitmap class

以下添加到您的代碼文件的頂部添加的命名空間System.Drawing:當你用位圖做

Bitmap bitmap = (Bitmap)Image.FromFile(@"mypath.bmp"); 

using System.Drawing; 

要加載的位圖

您可以獲取位圖中的寬度,高度和任何像素:
int width = bitmap.Width; 
int height = bitmap.Height; 
Color pixel00 = bitmap.GetPixel(0, 0); 
+1

+1。如果您想使用底層原始數據,請使用[Bitmap.LockBits](http://msdn.microsoft.com/zh-cn/library/5ey6h79d%28v=vs.110%29.aspx)。 –

+0

@AlexeiLevenkov正確,但對於這個OP我覺得有些過於先進。這只是一個優化。 – Virtlink

+0

也許吧,但感覺到OP想要做什麼 - 「......將其轉換成二維字節數組......」。 –

相關問題