Questions and answers in this FAQ have been collected from newsgroup posts, various mailing lists and the employees of Syncfusion. 19. GDI+ FAQ Home 19.1 Why do I get the error message "CS0122: 'System.Drawing.Imaging.ImageFormat.jpeg' is inaccessible due to its protection level "? 19.2 19.3 19.4 19.5 19.6 19.7 19.8 19.9 Why do I get the error message "A generic error occurred in GDI+."? How to draw strings vertically on a Bitmap? I am using GDI+ to write on a bitmap. I know how to make font Italic/Bold. What should be done to apply both Italic and Bold? How can I display image from a Sql Server database? How to display image on a browser without using the image tag? How to rotate a image in ASP.NET? How to show the graphics that have text written on it crisp and clear? I get error "Value of String cannot be converted System.Drawing.Color' when I use label1.BackColor= "Red"?
19.10 How to load a image from a website URL? 19.11 How can I check the image raw format i.e how can I find if Image.RawFormat property returns a "jpeg" or "gif",? 19.12 How to align the text on a bitmap?
19.1 Why do I get the error message "CS0122: 'System.Drawing.Imaging.ImageFormat.jpeg' is inaccessible due to its protection level "? Try giving the proper file path for the image. Also make sure you have proper permissions on that file.
19.2 Why do I get the error message "A generic error occurred in GDI+."? Give the proper path of the file. Check your permissions on the server where you are trying to write/read the files
19.3 How to draw strings vertically on a Bitmap?
... dim sFormat As New StringFormat() sFormat.FormatFlags = StringFormatFlags.DirectionVertical ...
g.DrawString("Syncfusion", new Font("Arial",16,FontStyle.Italic or FontStyle.Bold ),SystemBrushes.WindowText, new PointF(2,2) , sFormat )
... StringFormat sFormat = new StringFormat() ; sFormat.FormatFlags = StringFormatFlags.DirectionVertical ; ... g.DrawString("Syncfusion", new Font("Arial",16,FontStyle.Italic|FontStyle.Bold ),SystemBrushes.WindowText, new PointF(2,2) ,sFormat) ; ...
19.4 I am using GDI+ to write on a bitmap. I know how to make font Italic/Bold. What should be done to apply both Italic and Bold? VB.NET
dim fntFont as Font = new Font("Arial",16,FontStyle.Italic|FontStyle.Bold )
C#
Font fntFont =new Font("Arial",16,FontStyle.Italic|FontStyle.Bold ) ;
For more details refer FontStyle Enumeration
19.5 How can I display image from a Sql Server database? VB.NET
'Function Public Function showImage(empid As Int32) As Byte() Dim myconnection As New SqlConnection("Server=localhost;uid=sa;password=;database=northwind;") Dim mycommand As New SqlCommand("Select Employeeid, FirstName,Photo from Employees where employeeid =" + empid.ToString(), myconnection) myconnection.Open() Dim dr As SqlDataReader = mycommand.ExecuteReader() dr.Read() Dim imgbyte As Byte() = CType(dr("Photo"), Byte()) Return imgbyte End Function 'showImage 'In Page_Load Dim data As Byte() = showImage(2)
Dim offset As Int32 = 78 Dim mstream As New System.IO.MemoryStream() mstream.Write(data,offset,data.Length -offset) Dim bmp As New System.Drawing.Bitmap(mstream) bmp.Save(Server.MapPath("sample.jpeg"), System.Drawing.Imaging.ImageFormat.Jpeg) mstream.Close() Image1.ImageUrl = Server.MapPath("sample.jpeg")
C#
//Function public byte [] showImage(Int32 empid) { SqlConnection myconnection = new SqlConnection ("Server=localhost;uid=sa;password=;database=northwind;"); SqlCommand mycommand = new SqlCommand ("Select Employeeid, FirstName,Photo from Employees where employeeid =" + empid, myconnection); myconnection.Open (); SqlDataReader dr= mycommand.ExecuteReader(); dr.Read(); byte[] imgbyte =(byte[]) dr["Photo"]; return imgbyte; } //In Page_Load byte[] data = showImage (2); Int32 offset =78; System.IO.MemoryStream mstream = new System.IO.MemoryStream (); mstream.Write(data, offset, data.Length - offset); System.Drawing.Bitmap bmp= new System.Drawing.Bitmap(mstream); bmp.Save(Server.MapPath ("sample.jpeg"), System.Drawing.Imaging.ImageFormat.Jpeg ); mstream.Close(); Image1.ImageUrl = Server.MapPath("sample.jpeg");
19.6 How to display image on a browser without using the image tag? VB.NET
Dim objBitmap As New Bitmap(500, 500) Dim objGraphics As Graphics = Graphics.FromImage(objBitmap) objGraphics.Clear(Color.White) objGraphics.FillRectangle(New SolidBrush(Color.Purple), 0, 0, 400, 10) objBitmap.Save(Response.OutputStream, ImageFormat.Jpeg)
C#
Bitmap objBitmap = new Bitmap(500, 500); Graphics objGraphics = Graphics.FromImage(objBitmap); objGraphics.Clear(Color.White); objGraphics.FillRectangle(new SolidBrush(Color.Purple ), 0, 0, 400, 10); objBitmap.Save(Response.OutputStream, ImageFormat.Jpeg);
19.7 How to rotate a image in ASP.NET? VB.NET
Dim img As System.Drawing.Image Dim strFilename As String = Server.MapPath("curves1.jpg") img = System.Drawing.Image.FromFile(strFilename) Dim b = New System.Drawing.Bitmap(img.Width, img.Height, PixelFormat.Format24bppRgb) Dim g As Graphics = Graphics.FromImage(b) img.RotateFlip(System.Drawing.RotateFlipType.Rotate270FlipXY) g.DrawImage(img, New Point(0, 0)) Response.ContentType = "image/jpeg" b.Save(Response.OutputStream, ImageFormat.Jpeg)
C#
System.Drawing.Image img ; string strFilename = Server.MapPath("curves1.jpg") ; img = System.Drawing.Image.FromFile(strFilename) ; Bitmap b = new System.Drawing.Bitmap(img.Width, img.Height, PixelFormat.Format24bppRgb) ; Graphics g = Graphics.FromImage(b) ; img.RotateFlip(System.Drawing.RotateFlipType.Rotate270FlipXY) ; g.DrawImage(img,new Point(0,0)) ; Response.ContentType="image/jpeg" ; b.Save(Response.OutputStream, ImageFormat.Jpeg) ;
19.8 How to show the graphics that have text written on it crisp and clear? Try VB.NET
objGraphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias
C#
objGraphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias;
19.9 I get error "Value of String cannot be converted System.Drawing.Color' when I use label1.BackColor= "Red"? Try VB.NET
Label1.BackColor = System.Drawing.Color.FromName("Green")
C#
Label1.BackColor = System.Drawing.Color.FromName("Green");
19.10 How to load a image from a website URL? Use WebClient to request it and save it to disk, open the local copy.
19.11 How can I check the image raw format i.e how can I find if Image.RawFormat property returns a "jpeg" or "gif",? VB.NET
if (Img.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.Jpeg)) then Response.ContentType = "image/jpeg" Else .. End if
C#
if (Img.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.Jpeg)) { Response.ContentType = "image/jpeg" } else { .. }
19.12 How to align the text on a bitmap? VB.NET
... Dim sFormat As New StringFormat() sFormat.Alignment = StringAlignment.Far ... g.DrawString("Syncfusion", New Font("Arial", 16, FontStyle.Italic), SystemBrushes.WindowText, New PointF(2, 2), sFormat) ......
C#
... StringFormat sFormat = new StringFormat() ; sFormat.Alignment = StringAlignment.Far; ... g.DrawString("Syncfusion", new Font("Arial", 16, FontStyle.Italic), SystemBrushes.WindowText, new PointF(2, 2), sFormat) ; ......
© 2001-2008 Copyright Syncfusion Inc. All rights reserved. | Privacy Policy | Contact | Sitemap