2010-05-20 49 views
1

遊戲應用程序編寫於C++並使用DirectX 8如何檢查顯示器中是否啓用寬高比自動調整

我得到一個最大顯示器分辨率來計算它的縱橫比。 然後,我使用這個值來修復遊戲渲染(縮放和設置剪輯,以接收正常的4:3圖像,並在黑屏上顯示寬屏監視器)。

如何檢查顯示器是否正在使用縱橫比自動調整? 因爲我的縮放比例和監視器縮放比例使得結果圖像超標

感謝

編輯: 我看到正確的不同顯示器的分辨率有或無「皇家特使」休閒遊戲的寬高比自動調整處理。但不知道他們是如何做到這一點的。

回答

2

通常這是在監視器本身實現的,所以應用程序將無法檢測到這種情況。

請注意,您還需要處理將顯示器分辨率設置爲1280x1024(使用非方形像素(顯示尺寸仍爲4:3物理尺寸)爲5:4分辨率)的情況。假設你的像素是方形的並不總是正確的。 (雖然可能有一種方法可以查詢操作系統或其他窗口管理器的這些信息。)

+0

謝謝。有人知道如果像素是正方形嗎? – kFk 2010-05-21 08:24:34

+0

@kFk - 我不記得了,但我認爲有一個WinAPI調用來獲取這些信息。儘管如此,它可能會被塞進某些顯示屬性結構中。 – 2010-05-21 17:57:31

相關問題