以前在別的地方見過一個(gè)通過調(diào)用系統(tǒng)API實(shí)現(xiàn)屏幕截圖的例子,從內(nèi)心來說我不太喜歡在C#代碼中出現(xiàn)這種情況,現(xiàn)在什么都講“和諧”,我覺得這種做法就是破壞了我們的“和諧”代碼,呵呵,開玩笑,有的時(shí)候,不通過系統(tǒng)API確實(shí)難以做到的。
下面講述的就是怎么通過純C#來實(shí)現(xiàn)屏幕截圖,代碼如下:
//保存圖象文件
private void SaveImage(Image image)
{
if (saveFileDialog.ShowDialog(this) == DialogResult.OK)
{
string fileName = saveFileDialog.FileName;
string extension = Path.GetExtension(fileName);
if (extension == ".jpg")
{
image.Save(fileName, ImageFormat.Jpeg);
}
else
{
image.Save(fileName, ImageFormat.Bmp);
}
}
}
這段代碼其實(shí)很簡單,可以設(shè)置截屏區(qū)域的位置和大小,只不過只能在.net 2.0環(huán)境中才能運(yùn)行。本人正在進(jìn)一步完善實(shí)現(xiàn)拖動(dòng)拖動(dòng)截屏技術(shù),類似于QQ中的截屏辦法,正在攻關(guān)中,如果完成就向大家公布源代碼。
新聞熱點(diǎn)
疑難解答
圖片精選