系统自适应,Ctrl+滚轮缩放界面等比例放大(页面不乱)

Ctrl+滚轮缩放界面等比例放大,并且保持页面不乱,实现比较简单获取当前浏览器比例,然后将body的高度、宽度拉伸一下就OK



function ChangeRatio() {
    var ratio = 0;
    var screen = window.screen;
    var ua = navigator.userAgent.toLowerCase();

    if (window.devicePixelRatio !== undefined) {
        ratio = window.devicePixelRatio;
    }
    else if (~ua.indexOf('msie')) {
        if (screen.deviceXDPI && screen.logicalXDPI) {
            ratio = screen.deviceXDPI / screen.logicalXDPI;
        }

    }
    else if (window.outerWidth !== undefined && window.innerWidth !== undefined) {
        ratio = window.outerWidth / window.innerWidth;
    }

    if (ratio) {
        ratio = Math.round(ratio * 100);
    }
    return ratio;

}

//进行比例缩放
function setAppScale(ratio) {
    $("body").width(ratio+"vw");
    $("body").height(ratio+"vh");
    //var ratioX = (300/ratio);
    //var ratioY = (300/ratio);
    var ratioX = 1;
    var ratioY = 1;
    console.log("????",ratioX);
    $("body").css({
        minWidth:1366,
        minHeight:768,
        transform: "scale("+ratioX+","+ratioY+")",
        transformOrigin: "left top",
            overflow:"auto"
    });
}



var curRatio = 100;
$().ready(function(){
    curRatio = ChangeRatio();
    console.log(curRatio);
    setAppScale(curRatio);
});

function changeBody(curRatio){
    $("body").width(curRatio+"vw");
    $("body").height(curRatio+"vh");
}

window.onresize = function() {
    curRatio = ChangeRatio();
    console.log(curRatio);
    setAppScale(curRatio);
};


上种方式在某些框架里不显示滚动条,可以通过内套一个div搞定

1、设置body样式style="width: 100%;height:100%;"

2、body内套一层最大的div(changeScaleDiv),用来放大超出范围显示滚动条,同样标签样式style="width: 100%;height:100%;"

3、body通过px的方式指定大小,否则不出滚动条

4、body内最大的div(changeScaleDiv)也通过px的方式指定大小,并且指定最小宽度minWidth、最小高度minHeight

5、监听onresize事件,每次变动修改changeScaleDiv的宽度和高度

/**
 * Created by muyunfei on 2021/1/20.
 */
function ChangeRatio() {
    var ratio = 0;
    var screen = window.screen;
    var ua = navigator.userAgent.toLowerCase();

    if (window.devicePixelRatio !== undefined) {
        ratio = window.devicePixelRatio;
    }
    else if (~ua.indexOf('msie')) {
        if (screen.deviceXDPI && screen.logicalXDPI) {
            ratio = screen.deviceXDPI / screen.logicalXDPI;
        }

    }
    else if (window.outerWidth !== undefined && window.innerWidth !== undefined) {
        ratio = window.outerWidth / window.innerWidth;
    }

    if (ratio) {
        ratio = Math.round(ratio * 100);
    }
    return ratio;

}

//进行比例缩放
function setAppScale(ratio) {
    $("body").width("100%");
    $("body").height("100%");
    $("body").width($("body").width());
    $("body").height($("body").height());
    $("body").css({
        overflow:'auto'
    })
    $("#changeScaleDiv").width(ratio+"%");
    $("#changeScaleDiv").height(ratio+"%");
    $("#changeScaleDiv").width($("#changeScaleDiv").width());
    $("#changeScaleDiv").height($("#changeScaleDiv").height());
    //var ratioX = (300/ratio);
    //var ratioY = (300/ratio);
    var ratioX = 1;
    var ratioY = 1;



    console.log("$(\"body\")",$("body"))
    $("body").css({

        transform: "scale("+ratioX+","+ratioY+")",
        transformOrigin: "left top",
        overflow:"auto"
    });

}



var curRatio = 100;
var initRatio = 100;
$().ready(function(){
    initRatio = ChangeRatio();
    init();
});

function init(){
    //1、设置body样式style="width: 100%;height:100%;"
    //2、body内套一层最大的div(changeScaleDiv),用来放大超出范围显示滚动条,同样标签样式style="width: 100%;height:100%;"
    //3、body通过px的方式指定大小,否则不出滚动条
    //4、body内最大的div(changeScaleDiv)也通过px的方式指定大小,并且指定最小宽度、最小高度
    //5、监听onresize事件,每次变动修改changeScaleDiv的宽度和高度
    $("body").width($("body").width());
    $("body").height($("body").height());
    $("body").css({
        overflow:'auto'
    })
    $("#changeScaleDiv").width($("body").width());
    $("#changeScaleDiv").height($("body").height());
    $("#changeScaleDiv").css({
        minWidth:1600,
        minHeight:768
    })
}


window.onresize = function() {

    curRatio = ChangeRatio();
    if(curRatio == initRatio){
        //恢复初始样子
        $("body").width("100%");
        $("body").height("100%");
        init();
    }else{
        setAppScale(curRatio);
    }


};


 

Visual Studio 的界面缩放比例可以调整,这对于高分辨率显示器或视力受限的用户来说非常有用。通过调整缩放比例,可以使编辑器、工具窗口和其他 UI 元素更易于查看和操作。 ### 设置 Visual Studio 缩放比例的方法: #### 方法一:全局缩放设置 1. **系统级别的缩放** - 打开 Windows 操作系统的“设置”应用。 - 进入 `个性化` -> `显示`。 - 在“更改文本、应用程序等项目的大小”下拉菜单中选择合适的缩放比例(如 100%、125% 或更高)。这将影响所有应用程序的显示效果,包括 Visual Studio。 #### 方法二:IDE 内部字体和窗口缩放 1. **调整 IDE 字体大小** - 打开 Visual Studio。 - 点击顶部菜单栏的 `工具 (Tools)` -> `选项 (Options)`。 - 在左侧导航栏中找到并展开 `环境 (Environment)` -> `字体和颜色 (Fonts and Colors)`。 - 可以分别针对不同的编辑器区域(例如文本编辑器、命令窗口等)调整字体大小。 2. **临时放大/缩小视图** - 使用快捷键组合 `Ctrl + 鼠标滚轮` 来动态地放大或缩小当前文档编辑区的内容。 - 此外,在某些版本的 Visual Studio 中还可以通过按住 `Ctrl` 键同时按下加号 (`+`) 和减号 (`-`) 来快速调整缩放级别;恢复默认缩放则可通过 `Ctrl + 0` 实现。 3. **DPI感知模式优化** - 如果遇到图标失真等问题,尝试启用 DPI 自适应功能: * 关闭 Visual Studio 后,右键点击桌面快捷方式。 * 选择属性中的兼容性标签页,并勾选“覆盖高 DPI 缩放行为”,然后从下拉列表里挑选适合的应用程序缩放方式(推荐选用 “系统增强型(System Enhanced)” 方案),最后确认保存修改即可。 以上就是几种常见的途径来改变 Visual Studio 用户界面上元素呈现的比例尺,希望对您有所帮助!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

牟云飞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值