3
需要C#Windows Forms程序的幫助。這是在.NET 4.0上。圖形CopyFromScreen在啓用字體/圖標縮放功能時關閉
我使用以下代碼(的片段),以從我的窗口捕獲的合成圖像:
var location = PointToScreen(picVisualizer.Location);
...
g.CopyFromScreen(location, new Point(0, 0), picVisualizer.Size, CopyPixelOperation.SourceCopy);
picVisualizer是在我的窗口PictureBox控件。 只要用戶將Windows字體/圖標縮放爲100%,就可以按預期完美工作。如果他們改變,捕獲的圖像是正確的大小,但偏移量,捕獲部分窗口,桌面等。
我已經嘗試了各種解決方案,但他們總是給我相同的位置值,所以最終結果是一樣的。我也試過AutoScaleMode爲None,Font,Dpi和Inherit,並且所有四個都給了我相同的結果。
是否有辦法調整該代碼,以便即使在顯示縮放比例不是100%時也能捕獲屏幕的正確部分?
謝謝。
['picVisualizer.DrawToBitmap()'](https://msdn.microsoft.com/en-us/library/system.windows.forms.control.drawtobitmap.aspx)是否有效? – Blorgbeard
@Blorgbeard是的,工作很好,謝謝! – TrojanNemo