웹 페이지에서 이미지를 복사하여 로컬에 저장하는 프로그램이 있습니다. 특정 웹 페이지에서 저장된 이미지는 완전히 검은 색 화면입니다. 처음에는 코드에서 좋은 그림을 찍지 않은 것이 문제라고 생각했습니다. 그래서 조사를 시작했습니다. 난 그 페이지에 수동으로 가서 (오른쪽 클릭, 이미지 복사) 이미지를 복사하려고했는데 여전히 검은 이미지를 반환했습니다. 누군가가 코드에서 이것을 무시할 수있는 방법을 말해 줄 수 있습니까? 다음은 현재 코드입니다. 대부분의 그림에서 잘 작동합니다.페이지에서 이미지를 복사하면 검은 색 이미지가됩니다.
IHTMLDocument2 doc = (IHTMLDocument2)webBrowser1.Document.DomDocument;
IHTMLControlRange imgRange = (IHTMLControlRange)((HTMLBody)doc.body).createControlRange();
foreach (IHTMLImgElement img in doc.images)
{
if (img.alt != "my image alt")
continue;
imgRange.add((IHTMLControlElement)img);
imgRange.execCommand("Copy", false, null);
using (Bitmap bmp = (Bitmap)Clipboard.GetDataObject().GetData(DataFormats.Bitmap))
{
if (bmp != null)
{
bmp.Save("testimg.jpg");
}
}
}
어떤 페이지입니까? Flash가 관련되어 있습니까? – SLaks
@SLaks 아니오 플래시가 없습니다. 이 웹 페이지에서 http://bestsoftware2download.com/submit.php....the captcha 이미지를 예를 들면 .... 브라우저에서 직접 복사 붙여 넣기를 시도하십시오. –
이미지의 배경이 투명합니다. – SLaks