473,394 Members | 1,219 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,394 software developers and data experts.

create bitmap

i need a bit of help with few lines of code.
1. i have integer array a[500,500] = numbers from 0 to 256
2. i have to create a 256 colours bitmap of 500x500 pixels, asign
colours as matrix a.
ex. bitmap at pixel at row 3 col 5 = colour number is a[3,5]
and save it to disk as a 256 colour bitmap without any compresion as
c:\a.bmp.
no interface.
i have microsoft visual c# 2008 express edition.
help? thank you.
Aug 11 '08 #1
3 3701
On Aug 11, 3:48*pm, radu <lungu.r...@gmail.comwrote:
i need a bit of help with few lines of code.
1. i have integer array a[500,500] = numbers from 0 to 256
2. i have to create a 256 colours bitmap of 500x500 pixels, asign
colours as matrix a.
ex. bitmap at pixel at row 3 col 5 = colour number is a[3,5]
and save it to disk as a 256 colour bitmap without any compresion as
c:\a.bmp.
no interface.
i have microsoft visual c# 2008 express edition.
help? thank you.
It depends on whether you want it to be fast, or to have purely
verifiable code.

In any case, read about System.Bitmap.Class (http://msdn.microsoft.com/
en-us/library/system.drawing.bitmap.aspx), and its constructor and
Save() method in particular. To fill it with pixels, you can either
use Bitmap.LockBits() method to get access directly to its pixel
buffer, and then use Marshal.Copy() to copy data from your pixel array
into that buffer a scanline at a time - this is the fast-but-unsafe
way. If you want slow-but-safe, just use Bitmap.SetPixel() in a loop
to copy all pixels from your array.

Do read the docs for all of the above first, and if you still have
questions after that, feel free to ask.
Aug 11 '08 #2
On Aug 11, 6:48*am, radu <lungu.r...@gmail.comwrote:
i need a bit of help with few lines of code.
1. i have integer array a[500,500] = numbers from 0 to 256
2. i have to create a 256 colours bitmap of 500x500 pixels, asign
colours as matrix a.
ex. bitmap at pixel at row 3 col 5 = colour number is a[3,5]
and save it to disk as a 256 colour bitmap without any compresion as
c:\a.bmp.
no interface.
i have microsoft visual c# 2008 express edition.
help? thank you.
Just out of curiosity wouldn't the array be [255, 255]? And shouldn't
the colors go from 0 to 255, not 256?

Tom P.
Aug 11 '08 #3
radu wrote:
i need a bit of help with few lines of code.
1. i have integer array a[500,500] = numbers from 0 to 256
2. i have to create a 256 colours bitmap of 500x500 pixels, asign
colours as matrix a.
ex. bitmap at pixel at row 3 col 5 = colour number is a[3,5]
and save it to disk as a 256 colour bitmap without any compresion as
c:\a.bmp.
no interface.
i have microsoft visual c# 2008 express edition.
help? thank you.
The bmp format is fairly simple, especially as you have a fixed size and
bit depth. Just put the header and the data in a byte array, and save it
as a file.

You will need a color palette, though. A value from 0 to 255 is not a color.

--
Göran Andersson
_____
http://www.guffa.com
Aug 14 '08 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

5
by: Steve Amey | last post by:
Hi all I have an ARGB value for a Colour (Eg. -65536. The value was retrieved by using the Color.ToArgb method), is there any way that I can create a System.Drawing.Image or a...
11
by: Prashant | last post by:
Hi, I have a huge problem. I have a data file which looks something like this -: ..1 .5 .9 -1 .2 .5 ...... ..2 .9 .1 .4 .3 -1 ...... ..2 .4 .5 .7 .6 .2 ...... ........
2
by: Anand Ganesh | last post by:
Hi All, In my application I am allowing the user to draw a line. But when the user clicks the start point and starts moving the mouse there is a series of line generated. When the mouse is up...
2
by: James Dean | last post by:
I create a bitmap like this. The width and height are got from the compressed file i am reading. The width and height are in pixels.....1bpp bitmap = new...
3
by: Bradford | last post by:
I have an Windows application that displays lots of different colored lines in a Panel by using the Graphics.DrawLine method. The location and length of each line comes from a database query that...
3
by: Richard Skopal | last post by:
In .NET Windows forms I can create a metafile using this code: Graphics grph = aControl.CreateGraphics(); IntPtr ipHDC = grph.GetHdc(); Metafile mf = new Metafile(aImgFilePath, ipHDC,...
5
by: Lance | last post by:
I need to create a Drawing.Bitmap from an array of integer values. My current technique creates a bitmap that eventually becomes corrupt (i.e., the bitmap's pixels change to a different color...
2
by: Melisa | last post by:
Hi, How can i create bitmap of a window form with all its child controls without showing this form? 1. I am trying to create bitmap image of a window form. 2. I am creating a new instance of...
0
by: news.microsoft.com | last post by:
Hi guys, This text looks long and complicate but it is not, and I really really need some help here. For the last 24hs I'm trying to resolve this issue (last night I dreamed
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.