-1

我正在研究 Windows 放大 api,我一直在使用它,但我对放大默认值有疑问,Windows 只允许您在最低时增加 25%。我有可能一次增加 1-5% 吗?鼠标滚动进出可能会增加百分之一?

Windows 最低 25% 默认][1]

提前感谢你的帮助。

    int xDlg = (int)((float)GetSystemMetrics(SM_CXSCREEN) * (1.0 - (1.0 / magnificationFactor)) / 2.0);
    int yDlg = (int)((float)GetSystemMetrics(SM_CYSCREEN) * (1.0 - (1.0 / magnificationFactor)) / 2.0);

    BOOL successSet = MagSetFullscreenTransform(magnificationFactor, xDlg, yDlg);
    if (successSet)
    {
        BOOL fInputTransformEnabled;
        RECT rcInputTransformSource;
        RECT rcInputTransformDest;

        if (MagGetInputTransform(&fInputTransformEnabled, &rcInputTransformSource, &rcInputTransformDest))
        {
            if (fInputTransformEnabled)
            {
                SetInputTransform(hwndDlg, fInputTransformEnabled);
            }                
        }
    }

成功集 == 假;当它不是 1.1 时,任何更低的东西都会失败,我意识到 1.1 = 125% 缩放。

4

2 回答 2

1

放大 API 中没有这样的限制。您在屏幕上看到的限制是由 UI 开发人员选择的。

于 2017-07-20T11:24:11.033 回答
1

MagSetFullscreenTransform和MagSetWindowTransform接受float输入参数。就放大倍数分辨率而言,没有任何限制,只要它至少1.0f且不大于上限。

于 2017-07-21T19:15:34.150 回答