2010-12-31 5 views
3

Je veux prendre une capture d'écran de 512x280 pixels d'une certaine section de l'écran en C# puis stocker les informations RVB dans un tableau. Si je voulais que l'origine (en haut à gauche) de la capture d'écran commence aux pixels (200, 200), comment pourrais-je faire cela?Prendre une capture d'écran d'une zone spécifique en C#?

J'ai demandé plus tôt et a reçu le code suivant:

http://pastebin.com/JmCJ4Qer

Cependant, cela semble encore créer le bitmap à partir des coordonnées 0,0 mais simplement laisser cette zone vide jusqu'à ce qu'il atteigne la taille. Cela crée quelque chose comme ceci: alt text

Lorsque l'image est poussée vers le bas et vers la droite, de nombreux pixels sont spécifiés dans xOrigin et yOrigin.

+0

Chaque fois que vous avez donné du code et que vous ne comprenez pas * exactement * ce qu'il fait, lisez la documentation. Non seulement vous apprendrez quelque chose, mais vous découvrirez des erreurs. –

Répondre

4

Consultez la documentation de Graphics.CopyFromScreen. Vous lui passez 2 ensembles de coordonnées X/Y - les coordonnées sur l'écran et les coordonnées dans votre bitmap. PAR le son des choses, vous lui dire de copier de la position de l'écran (0,0), à la position (200,200) dans votre bitmap. C'est probablement le mauvais chemin.

Questions connexes