TECHNOLOGIES
FORUMS
JOBS
BOOKS
EVENTS
INTERVIEWS
Live
MORE
LEARN
Training
CAREER
MEMBERS
VIDEOS
NEWS
BLOGS
Sign Up
Login
No unread comment.
View All Comments
No unread message.
View All Messages
No unread notification.
View All Notifications
Answers
Post
An Article
A Blog
A News
A Video
An EBook
An Interview Question
Ask Question
Forums
Monthly Leaders
Forum guidelines
jgress
NA
1
0
PictureBox and antialiasing (smoothing)
Oct 12 2003 1:20 PM
I'm a newbie and I'm trying to do something that I know is simple. I'm using a picturebox to display a tif image and the following line loads the image I want displayed (I know I'm using the wrong terminology when I say "load"). pictureBox1.Image = Image.FromFile(ImageName); The image is there and I've stretched it using pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage; So far so good, but the image doesn't look too good. I want to use antialiasing and maybe pixel offsets to clean it up a little and this is where I run into trouble. I'm not sure how to use these properties or call methods from another class. I'm not sure if I should even be using OnPaint or something else. I tried overriding the OnPaint method like below and added a MessageBox statement there to see when it fires and it only seems to fire when the program begins to run, not later after I've instantiated a picturebox object and told it which image I want displayed. How do I use the following, or whichever method is correct, so that it does the antialiasing and renders this in the picturebox? I know this can't be too hard. I'm hoping it's not. protected override void OnPaint(PaintEventArgs pea) { Graphics grfx = pea.Graphics; Pen pen = new Pen(ForeColor); grfx.SmoothingMode = SmoothingMode.HighQuality; grfx.PixelOffsetMode = PixelOffsetMode.HighQuality; } Last night, after getting ready to post this, I tried one more thing, thinking that I can figure this out myself. Graphics grfx = Graphics.FromImage(pictureBox1.Image); grfx.SmoothingMode = SmoothingMode.HighQuality; grfx.PixelOffsetMode = PixelOffsetMode.HighQuality; grfx.TextRenderingHint = TextRenderingHint.AntiAlias; For the TIFF image I was trying to view I got the following exception: "A graphics object cannot be created from an image that has an indexed pixel format". When viewing a JPG I didn't get the error message, but the image looked no different with the graphics properties set. Now I have two problems; not only do I not know how to set these options so that the image is viewed in the picturebox using the graphics properties, but even if I can figure it out it doesn't seem to work with TIFF images and that's all I'm using. Thanks in advance, Jeff
Reply
Answers (
1
)
Drawing Stretched Text
HELP! Detect if a JPG is progressive! REWARD!