2009-04-03 2 views
5

사용자가 내 앱에서 현재 화면을 캡처하고 이메일로 보낼 수있는 기능을 추가하고 싶습니다. 나는 아주 비 기술적 인 사용자 기반을 가지고 있으므로 가능한 한 간단해야한다. 나는 그들이 Help Me라는 메뉴 항목을 클릭하도록 할 계획이다. 그러면 현재 응용 프로그램 화면 (jpg 또는 png)을 캡처 한 다음 Outlook을 열고 이미지를 첨부 파일로 추가합니다.현재 화면을 이미지로 캡쳐하려면 어떻게합니까?

코드 프로젝트에서이 게시물 ScreenCapture을 읽고 있었지만 약간 낡았습니다. 정확히 내가 찾던 내용이 아니므로 이것을 수행하는 더 좋은 방법이 있는지 확인하겠다고 생각했습니다.

어떻게 시작합니까? 라이브러리가 있거나 충분히 내장 된 기능입니까?

감사합니다.

답변

12

링크 된 게시물은 적절한 접근 방식입니다. 그들은 매우 복잡하게 만들었습니다. Graphics.CopyFromScreen을 사용하고 싶을 것입니다.

Rectangle bounds = this.Bounds; 

using(Bitmap ss = new Bitmap(bounds.Width, bounds.Height)) 
using(Graphics g = Graphics.FromImage(ss)) 
{ 
    g.CopyFromScreen(this.Location, Point.Empty, bounds.Size); 
    ss.Save("test.jpg", ImageFormat.Jpeg); 
} 
+0

작은 오타 -> 4 호선 -> Graphics.FromImage (SS)) 반짝! –

+0

@Mr_Mom : 고마워요. – Samuel

관련 문제