需实现效果为,将一个网页内容截图并保存文件,最后通过邮件发送
private void button1_Click(object sender, EventArgs e)
{
var to = "";//接收人邮箱
var bodyUrl = "";//需要截图的网页地址
//图片保存路径
string destPath = "C:\\Users\\lwk123456\\Desktop\\图片\\";
//生成图片名称
var subject = "截图生成图片" + DateTime.Today.ToString("yyyy-MM-dd");
string imageName = $"{
subject}.jpeg";
string extName = Path.GetExtension(imageName).ToLower();
WebScreenshot screenshot = new WebScreenshot();
screenshot.createImg(bodyUrl, destPath, imageName, 895, 3800);
//由于需要通过邮件发送所以这里将图片转base64,方便加载
//或者也可直接转为网络路径
var picByte = screenshot.PictureTurnByte(Path.Combine(destPath, imageName));
var picByteStr = Convert.ToBase64String(picByte);
//邮件发送内容主体
var body = $"<img src='data:image/{
extName};base64,{
picByteStr}' alt='{
subject}' />";
bool res = sendEmail.Send(to, "", subject, body, false);
MessageBox.Show($"截图成功,图片路径:{
Path.Combine(destPath, imageName)}");
}
以下为具体实现
/// <summary>
/// 网页截图帮助类
/// </summary>
public class