[ antiR3ality @ 04.04.2008. 22:41 ] @
Imam sledeci problem: zelim da usmereni graf koji iscrtavam na panelu sacuvam u vidu neke slike (jpg, bmp). Jedan od nacina kojim sam pokusao ovo da uradim je :

Code:

 Bitmap btmp = new Bitmap(pnlGraph.Width, pnlGraph.Height);
 pnlGraph.DrawToBitmap(btmp, new Rectangle(0, 0, pnlGraph.Width, pnlGraph.Height));
 btmp.Save("graf1.jpg", ImageFormat.Jpeg);

, gde je pnlGrapf panel na kome sam iscrtao graf. Ovo medjutim ne funkcionise - kreira praznu sliku zadate velicine.
Zanima me da li je uopste moguce ovo na ovakav nacin uraditi, a ako nije, kako bi trebalo?
Unapred hvala!
[ radoica @ 05.04.2008. 14:04 ] @
Crtaj svoj graf prvo na bitmapi, pa kada zavrsis crtanje samo prikazi tu bitmapu na panelu (bolje bi bilo da koristis image kontrolu umesto panela).
[ deerbeer @ 05.04.2008. 15:25 ] @
Code:


    Bitmap bitmap = new Bitmap(800,600,PixelFormat.Format32bppArgb);
    Graphics g = Graphics.FromImage(bitmap);
    
    // kod za iscrtavanje  grafa ako si  koristio GDI funkcije 
    g.DrawRectangle(......);
    g.DrawLine (.....) ; 
    g.DrawImage(...) ; 
    bitmap .Save("graf1.jpg", ImageFormat.Jpeg);





Druga varijanta je da mozes da uradis sa bitmap.SetPixel(..) http://msdn2.microsoft.com/en-...m.drawing.bitmap.setpixel.aspx
da prebacis sa tvog grafa (tj .kontrole ..pretpostavljam System.Windows.Forms.Panel) u kreiranu bitmap-u ako si koristio manje bmp-ove za crtanje tvog grafa ..


Treca je ako hoces da uradis screenshot tvoje kontrole je sa koriscenjem BitBlt (pogledaj msdn ) funkcije iz Win32 API-ija
[ antiR3ality @ 06.04.2008. 23:36 ] @
Hvala najlepse, puno ste mi pomogli.
Pozdrav!