I know alot of people have the problem with indexed pixel format. I hope
someone can show me the solution to this.I am have problem with graphics
with the following code giving the error:

"A Graphics object cannot be created from an image that has an indexed pixel
format."

'My code


<%@ Page Language="vb" %>
<%@ import namespace="system.drawing" %>
<%@ import namespace="system.drawing.imaging" %>
<%@ import namespace="system.drawing.drawing2d" %>


<%

' initialise the web object
Dim webC As New System.Net.WebClient()

' set the URL
Dim strFilename as string


strFilename="http://www.domain.com/graph.gif"

' create a bitmap based on the image from the URL
Dim g = New System.Drawing.Bitmap(webC.OpenRead(strFilename))


response.contenttype="image/gif"

dim gr as graphics = graphics.fromimage(g) ' create a New graphic object
from the above bmp

gr.smoothingMode = smoothingMode.antiAlias ' antialias objects

'' draw the number on the image canvas in verdana 10pt font bold
gr.drawString("ABC", New
font("verdana",14,fontstyle.bold),systembrushes.windowtext, New pointF(2,2))


' send the image to the viewer
g.save(response.outputstream, g.rawformat)

' tidy up
g.dispose()
gr.dispose()
webC = Nothing

%>

Re: Problem with indexed pixel format/ by Bob

Bob
Mon Jan 24 05:50:31 CST 2005

This is intended behaviour. The error "A Graphics object cannot be created
from an image that has an indexed pixel format." says it all.

You need to create an image the same size as the original, get the Graphics
object for it, draw the original onto the new Graphics object, draw your
number and then save the newly created bitmap to the response stream.

--
Bob Powell [MVP]
Visual C#, System.Drawing

Find great Windows Forms articles in Windows Forms Tips and Tricks
http://www.bobpowell.net/tipstricks.htm

Answer those GDI+ questions with the GDI+ FAQ
http://www.bobpowell.net/faqmain.htm

All new articles provide code in C# and VB.NET.
Subscribe to the RSS feeds provided and never miss a new article.





"jty202" <jty202@gmail.com> wrote in message
news:e13tjuZAFHA.3700@tk2msftngp13.phx.gbl...
>I know alot of people have the problem with indexed pixel format. I hope
> someone can show me the solution to this.I am have problem with graphics
> with the following code giving the error:
>
> "A Graphics object cannot be created from an image that has an indexed
> pixel
> format."
>
> 'My code
>
>
> <%@ Page Language="vb" %>
> <%@ import namespace="system.drawing" %>
> <%@ import namespace="system.drawing.imaging" %>
> <%@ import namespace="system.drawing.drawing2d" %>
>
>
> <%
>
> ' initialise the web object
> Dim webC As New System.Net.WebClient()
>
> ' set the URL
> Dim strFilename as string
>
>
> strFilename="http://www.domain.com/graph.gif"
>
> ' create a bitmap based on the image from the URL
> Dim g = New System.Drawing.Bitmap(webC.OpenRead(strFilename))
>
>
> response.contenttype="image/gif"
>
> dim gr as graphics = graphics.fromimage(g) ' create a New graphic object
> from the above bmp
>
> gr.smoothingMode = smoothingMode.antiAlias ' antialias objects
>
> '' draw the number on the image canvas in verdana 10pt font bold
> gr.drawString("ABC", New
> font("verdana",14,fontstyle.bold),systembrushes.windowtext, New
> pointF(2,2))
>
>
> ' send the image to the viewer
> g.save(response.outputstream, g.rawformat)
>
> ' tidy up
> g.dispose()
> gr.dispose()
> webC = Nothing
>
> %>
>
>
>