Bitmap bitmap = new Bitmap(Screen.PrimaryScreen.Bounds.Width,
Screen.PrimaryScreen.Bounds.Height);
Graphics graphics = Graphics.FromImage(bitmap as Image);
graphics.CopyFromScreen(0, 0, 0, 0, bitmap.Size);
bitmap.Save(@"C:\Temp\printscreen.jpg", ImageFormat.Jpeg);
Run Code Online (Sandbox Code Playgroud)
这是我的打印屏幕按钮代码.问题是我按下按钮几次,它只是写在旧图像文件(printscreen.jpg)上,它不会创建另一个新的图像文件,如printscreen1.jpg.
试试这个.它每次都会生成一个唯一的文件.
Bitmap bitmap = new Bitmap(Screen.PrimaryScreen.Bounds.Width,
Screen.PrimaryScreen.Bounds.Height);
Graphics graphics = Graphics.FromImage(bitmap as Image);
graphics.CopyFromScreen(0, 0, 0, 0, bitmap.Size);
bitmap.Save(@"C:\Temp\printscreen"+Guid.NewGuid()+".jpg", ImageFormat.Jpeg);
Run Code Online (Sandbox Code Playgroud)
要么
Bitmap bitmap = new Bitmap(Screen.PrimaryScreen.Bounds.Width,
Screen.PrimaryScreen.Bounds.Height);
Graphics graphics = Graphics.FromImage(bitmap as Image);
graphics.CopyFromScreen(0, 0, 0, 0, bitmap.Size);
var date = DateTime.Now.ToString("MMddyyHmmss");
bitmap.Save(@"C:\Temp\printscreen"+date+".jpg", ImageFormat.Jpeg);
Run Code Online (Sandbox Code Playgroud)
它不会创建另一个新的图像文件
你不是要求它创建一个代码
bitmap.Save(@"C:\Temp\printscreen.jpg", ImageFormat.Jpeg);
Run Code Online (Sandbox Code Playgroud)
总是写到同一个文件.
新图像文件,例如printscreen1.jpg
如果要创建新文件,则需要动态生成文件名.就像是
string fileName = System.IO.Path.GetTempPath() + DateTime.Now.ToString() + ".jpg";
bitmap.Save(fileName, ImageFormat.Jpeg);
Run Code Online (Sandbox Code Playgroud)