Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

VB.NET Picturebox Blurring Smaller Images

Posted on 2008-06-15
5
Medium Priority
?
1,416 Views
Last Modified: 2013-11-26
Hi Experts,

I'm developing a graphical processing package in (possibly the worst language for this!!) VB.NET, and part of this involves me showing a small 10x10 or 50x50 pixel image in a large picturebox. The VB.NET control is blurring the image, making it impossible to distinguish between the pixels. The picturebox is on 'Stretch' mode, in order to bring the pixels to a viewable level.

If any experts know how to either change the properties of the picture box, or how to scale up the image without using get/setpixel as this is too slow for my application then i would be most appreciative.

Tom
0
Comment
Question by:daveford123
  • 3
  • 2
5 Comments
 
LVL 14

Accepted Solution

by:
rachitkohli earned 2000 total points
ID: 21791114
You may try picturebox property SizeMode=Zoom
Since this will fit in the picture box, but will also mantain the aspect ratio of the image.
To resize the image, dont use Get/Set pixels, you may use the graphics object DrawImage method.
But if you use DrawImage method, you need to set the width, height manually (if required need to also keep in mind about the aspect ratio, since its a very important factor while resizing an image)

Just a note, vb.net is not a worst language for Graphical Processing any more, since it has a powerful GDI+ class library, which can do anything.
I have managed to make a full fledged photo editing software with multi-layer it.

0
 
LVL 14

Expert Comment

by:rachitkohli
ID: 21791124
a nice site to understand the fundamentals about gdi+

http://bobpowell.net/
0
 

Author Comment

by:daveford123
ID: 21807740
Rachitkohli, That site is just what im looking for, with the translation matrix(es). the only issue im having now is changing the graphics object into the image data type that the picturebox can display. Any ideas?
0
 

Author Comment

by:daveford123
ID: 21808063
Thought this might help; this is the code im using currently, and getting a 'generic error'. Previously i was using the commented code and getting a 'type mismatch' error.
        Dim e As Graphics
        e = Graphics.FromImage(TempImg)
        e.Transform = New Drawing2D.Matrix(50, 0, 0, 50, 0, 0)
        COMP_TRANS.Image = e
        COMP_TRANS.Image = Image.FromHbitmap(e.GetHdc)

Open in new window

0
 

Author Closing Comment

by:daveford123
ID: 31467413
Cheers for that - good site, good advice
0

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Computer science students often experience many of the same frustrations when going through their engineering courses. This article presents seven tips I found useful when completing a bachelors and masters degree in computing which I believe may he…
Q&A with Course Creator, Mark Lassoff, on the importance of HTML5 in the career of a modern-day developer.
Six Sigma Control Plans
Starting up a Project

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question