用c#进行截屏时,由于用户可能在显示设置内调整缩放比例,比如“更改文本、应用等项目的大小”到150%。这时,用传统的代码抓屏时就会出现显示区域不全的问题。
原因在于当前显示器的“屏幕分辨率当前物理大小”和屏幕显示大小不一致,对应的获取方法分别如下:
/// <summary>
/// 获取真实设置的桌面分辨率大小
/// </summary>
public static Size DESKTOP
{
get
{
IntPtr hdc = GetDC(IntPtr.Zero);
Size size = new Size();
size.Height = GetDeviceCaps(hdc, 117);
size.Width = GetDeviceCaps(hdc, 118);
&


2458

被折叠的 条评论
为什么被折叠?



