Toon posts:

[VB.NET] Een capture van control naar bitmap schrijven

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb een control, hiervan wil ik een plaatje maken en naar een bestand schrijven.

er is een functie me.creategraphics. Die maakt een GDI class aan (als ik het goed begrepen heb). Daarin moet je dan de contents van die control in kunnen zetten en schrijven naar een bestand.

hier http://www.codeguru.com/vb_misc/Karl04.html heb ik een voorbeeld gevonden die een screenshot uitprint.

Ze gebruiken de API functie BitBlt, maar ik ben niet zo goed met API functies en snap dus niet goed hoe je dat plaatje naar een bestand kan schrijven. Ik kon er ook geen voorbeeld ofzo van vinden op internet, misschien hier...?

Verwijderd

Topicstarter
niemand?

Verwijderd

Hoi,
tja, 't kan echt niet anders dan met de API, vrees ik. Je kan een graphics-context maken van de control én van een (nieuwe) bitmap, maar je kan niet van de éne context naar de andere schrijven zonder een API-functie (bitblt) te gebruiken.
De flow is dus:
1. creeer een graphicscontext voor de control (ctrl.creategraphics)
2. creeer een nieuwe bitmap (new Bitmap)
3. creeer een graphicscontext voor de bitmap (graphics.fromImage)
4. haal de devicecontext van het graphicsobject van bitmap en control (getHdc)
5. Bitblt de ene devicecontext in de andere devicecontext. (hier ga je dus de grafische voorstelling van de control in de bitmap copiëren)
6. Vergeet niet de devicecontexten vrij te maken (releaseHdc), en doe ook
maar een dispose van de graphicsobjecten.
7. save bitmap.
8. klaar is klara.

In ieder geval, het is vrij eenvoudig om API calls te gebruiken in .Net.

[ Voor 13% gewijzigd door Verwijderd op 19-02-2004 16:06 ]