winform 适配high dpi】的更多相关文章

在 mainifest文件中添加:(新建mainifest文件的时候以下内容是有的,只要取消注释就可以了) <compatibility xmlns="urn:schemas-microsoft.comn:compatibility.v1"> <application> <!-- Windows 10 compatibility --> <supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a…
1. 将 Form 的 AutoScaleMode 属性设置为 DPI: 2. 在Program.cs中修改代码 class Program { [STAThread] static void Main() { if (Environment.OSVersion.Version.Major >= 6) SetProcessDPIAware(); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefa…
1. PicBox控件 顺便一提关键字:stretch [stretʃ] vt. 伸展,张开 //控制pictureBox图片的显示格式 this.picClose.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; //这个才是控制跟随DPI自适应的 this.picClose.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; 2.la…
现在的屏幕大部分都是高分屏,在这样的屏幕下开发winfrom软件就需要注意高DPI问题了 1.Form和UserControl的AutoScaleMode设置为Dpi 2.为项目添加应用程序清单文件(app.manifest),并取消下面行的注释 <application xmlns="urn:schemas-microsoft-com:asm.v3"><windowsSettings><dpiAware xmlns="http://schema…
/// <summary>当前Dpi</summary> public static Int32 Dpi { get; set; } /// <summary>修正ListView的Dpi</summary> /// <param name="lv"></param> public static void FixDpi(this ListView lv) { ) Dpi = (Int32)lv.CreateGrap…
目录 一.回顾 二.框架说明 1.ICallDPIChanged 2.IDPIHelper 3.悬浮窗体管理器 三.方案分析 1.窗口大小 2.字体大小 3.间距 4.图标 四.相关文章 原文链接:Qt之高DPI显示器(二) - 自适配解决方案分析 最近一直在处理高DPI问题,也花费了不少功夫,前前后后使用了多种解决方案,各种方案也都有利弊,笔者最终采用了自适配方案,虽然复杂一些,但是结果可控.这里把处理的过程记录下来,留给有同样需求的同学 一.回顾 上一篇文章Qt之高DPI显示器(一) - 解…
一.前言 一个软件,往往会用到位图资源,比如图标.图片.水晶按钮等. 在使用了位图资源后,就不能对任意DPI都进行适配,因为这样适配的代价太大了. 像Win10的缩放比例可以由100%-500%,如果全部适配的话,仅一个图标就是制作401个不同分辨率的版本,时间成本和空间成本上开销都太大了.同时,在很多DPI下,这401个图标当中有很多临近的图标的尺寸变化并不明显,甚至相同,这样无疑是浪费. 所以,我们就需要以DPI范围为基础进行适配. 相信看完的你,一定会有所收获! 本文地址:https://…
一.前言 光说不练假把式. 原理说再多,也不如一个例子直观明了.所以本篇文章就来通过一个例子演示一下高DPI适配的流程. 相信看完的你,一定会有所收获! 本文地址:https://www.cnblogs.com/lesliexin/p/14801749.html 二.对比 我们先来看一组对比,分别是未进行高DPI适配与已进行高DPI适配的程序运行截图. (一),DPI=96(屏幕分辨率:1080P) 1,未进行高DPI适配 2,已进行高DPI适配 这种情况下,程序未发生缩放,所以两者几乎一样.…
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 这里只是根据参考资料整理下,具体内容请阅读参考资料. 原型设计图 推荐1倍效果图,即采用 720 * 360 大小( 1280 *720:两倍图 \ 1920 * 1080: 三倍图),最主要的原因就是1px = 1dp,效果图标多大的px,布局就写多大dp. 屏幕各项参数 手机像素(px):一个小黑点就是像素: 手机尺寸:屏幕的对角线的长度: 手机分辨率:整个屏幕一共有多少个点(像素),常见取值 480X800 ,320X48…
本文记录一些适配问题的研究,基础概念不做过多介绍. Android在做屏幕适配的时候一般考虑两个因素:分辨率和dpi.分辨率是屏幕在横向.纵向上的像素点数总和,一般用"宽x高"的形式表示,例如:1080x1920.dpi是dots per ich的缩写,表示每英寸的像素点数,例如160dpi指手机水平或垂直方向上每英寸距离有160个像素点. 一.dp和px dp和px都是编写布局时的单位,它们之间可以通过dpi来换算,换算公式如下: 公式一:px值 = dp值 * (dpi/160)…
目录 DPI发展 1.PPI 2.DPI 一.Win自适应系统 二.Qt机制 1.Windows系统DWM缩放 2. Qt适配高DPI 3.适配DPI结论 三.Qt适配 四.自己适配 1.窗口大小 2.字体大小 3.间距 4.图标 五.参考文章 最近一直在处理高DPI问题,也花费了不少功夫,前前后后使用了多种解决方案,各种方案也都有利弊,笔者最终采用了自适配方案,虽然复杂一些,但是结果可控.这里把处理的过程记录下来,留给有同样需求的同学 DPI发展 随着显示器质量的增高,高分屏逐渐增多,很多用户…
目录 一.醉一醉 二.效果展示 三.高DPI适配 1.高DPI框架运作 2.适配高DPI 3.适配饼图 四.相关文章 原文链接:Windos高DPI系列控件(一) - 饼图 一.醉一醉 眨眼功夫,2020年过去一半了.回想最近一段时间的工作和生活,总觉得应该写点儿什么! 于是,最近有空就在想啊想,想想可以写点儿什么有用的东西好呢!刚好之前写过几篇关于高DPI的文章,不知道什么原因,阅读量不是很高,因此打算以高DPI为索引开始引入一系列的控件使用案例,包括Qt自带的控件.简单图表和一些复杂的图表.…
目录 一.QCP 二.效果展示 三.高DPI适配 1.自定义柱状图 2.新的柱状图 3.测试代码 四.相关文章 原文链接:Windows高DPI系列控件(二) - 柱状图 一.QCP QCP全称QCustomPlot,是一个基于Qt的图表库,同时支持Qt4和Qt5,使用起来还是很方便的,不管是编译成dll还是直接嵌入到我们自己的程序都是极其容易,毕竟只有两个文件.之前写过几篇简单的关于QCP的文章,从使用的角度分析了QCP的一些简单用法,包括:QCustomplot使用分享(一) 能做什么事.Q…
/** * 作者:David Zheng on 2015/11/7 15:38 * *  网站:http://www.93sec.cc * *  微博:http://weibo.com/mcxiaobing * *  微博:http://weibo.com/93sec.cc */ 个人交流QQ986945193 屏幕适配简介(了解) Android的屏幕有大有小,为了对不同大小屏幕的设备提供最好的体验,需要对不同大小的设备进行不同的设计,让他们产生的效果一样的. 进入友盟:http://www.…
和手机屏幕一样,高分屏在PC上使用越来越多.传统的桌面程序都是像素为单位进行UI布局,而且是适配传统的96dpi的显示器的.这就导致这些程序在高分屏上显示很小,用户用起来很难受. 虽然windows系统提供了桌面程序自动放大功能,但这个放大效果是以牺牲显示效果为代价的,一个在普屏上显示很好的软件到了高分屏上显示变得非常粗糙. 要解决这个问题非常麻烦,对于有些项目甚至变成不可能完成的任务: 如果使用同一套布局,布局系统需要支持放大时使用的字体的重建,还需要支持放大时使用的图片资源的重新获取,还需要…
转:https://zhuanlan.zhihu.com/p/25465537 瘦身的目的 从目的导向来看,我们是不会无缘无故去做一件事情的,那我们对应用瘦身的目的是为了什么?答案是:提高下载转化率.什么是下载转化率?举个栗子:你的应用大小是 18MB ,有100个潜在用户想要去下载尝试使用,结果有20个用户嫌弃安装包太大直接扬长而去,有20个用户在等待下载的过程中取消下载,最终只有60个用户真正下载安装,那么应用的下载转化率就是 60/100 = 60% . 简单的小结便是:安装包越小,用户下…
注:本文转载于:http://blog.csdn.net/welovesunflower/article/details/7930248 一些术语 Screen Size 屏幕尺寸: 实际的物理尺寸,以屏幕的对角线为准(包括通知栏?) 将所有的实际尺寸分为四个广义的尺寸:small(小),normal(正常),large(大),extra large(特大) Density 屏幕密度: 屏幕的屋里面积内的像素数量,通常指dpi(每英寸点数) small的屏幕密度比normal或large在一个给…
2020-1-31, 6.1.5.1a 版(*) 跟进汉化版修正.(*) MusicTag升级到 1.0.4.0.(*) 部分图标改良,其他优化和修正.(+) 丰富网络功能,增加一个搜索源,一个榜单源和一个电台源. 2020-1-09, 6.1.5.1 版(*) 升级主程序到 foobar2000 v1.5.1 汉化版.(*) 替换 mp3tag 为 MusicTag,搜索歌曲标签和封面更给力.(*) 修正树形媒体库锁定媒体库播放列表会锁定失效的问题.(+) 封面浏览面板顶栏增加显示当前播放的曲…
因为现在高分屏越来越多,很多windows设备必须设置高DPI,这样很容易导致WINFORM整体错位,因此我们需要自己适配.禁止缩放 在程序配置清单 mainfest中添加如下. <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3" > <asm…
一.前言 程序最基本的元素,就是文本,也就是字体.如果程序未进行高DPI的适配,最直观的感受便是字体的模糊.所以本篇便来说一下高DPI适配中的字体问题. 高DPI的适配,简单来说便是便是根据不同的DPI对尺寸和位置进行调整,那么就需要一个锚点,所有的尺寸和位置的变化都以此锚点为基准进行调整. 相信看完的你,一定会有所收获! 本文地址:https://www.cnblogs.com/lesliexin/p/14801347.html 二.字体字号与尺寸 WinForm程序,默认是支持系统的自动缩放…
一.引言 Android的开源使厂商无需自行研发OS,大大降低了研发.生产的成本,使得Android平板品牌如雨后春笋般爆发,山寨机厂商们似乎又找到了一丝希望.与此同时带来的是广大开发者的苦不堪言,各种神奇的小板儿考验着app的兼容性,各种定制的rom不经意间就让app崩溃,光是界面上的调整就已经够你喝一壶了,是不? 二.适配可行性 早在Android设计之初就考虑到了这一点,为了让app适应标准or山寨屏幕,google已经有一套成熟的解决方案.其中,有这么几个指标需要注意: (1)屏幕尺寸:…
在目前高分屏流行的情况下,windows缩放与布局仍然设置为100%就显得太小(特别是笔记本),通常会调整为125%或150%, VS在缩放与布局设置为非100%的时候,就会自动启动DPI感知模式,以防止VS界面模糊. 但也会导致一个问题 就是在高DPI下(非100%缩放与布局)设计的winform程序 当拿到不同的缩放条件下运行时就会遇到界面变形或不一致的问题, 我们这里提供了一个解决方案来防止高DPI下设计出的winform程序界面变形(但是不能解决winform程序在高DPI下可能变糊)…
目录 问题现象 解决办法 1.将cefsharp的gpu设置为无效,(后遗症,h5动画会出现卡顿现象,慎用) 2.将屏幕的DPI置为96(缩放比例为100%)(后遗症,不可能每个电脑都去配置) 3.支持高DPI(后遗症,winform窗体会缩放) 4.(采用)让整个程序支持高DPI 回到顶部 问题现象 如图所示:在高DPI(168) 缩放比例为:175%的配置下,,cefsharp控件的左侧和上部出现黑边 (电脑配置图) (问题图) 回到顶部 解决办法 1.将cefsharp的gpu设置为无效,…
最近要做一个windows下截屏识别文字的程序,调试发现截取的图像显示不完整. 输出了Screen.PrimaryScreen.Bounds.Width获取的值,结果与实际分辨率不同,所以确定了与我的系统设置了150%的显示缩放有关系. 网上找答案,各种dpi的计算或是bitmap的处理,折腾我大半个小时还是没找到完美的解决方案. 我决定打把lol放松放松(解决问题不必过急,一头扎进去反而会当局者迷,先放一放也许会突然地灵机一现) 在敌方水晶爆炸的那瞬间,我想起了之前做的WPF程序可以自动支持缩…
一.前言 当下,2K分辨率已成为主流标配,3K.4K也已经广泛应用. 在屏幕尺寸不变的情况下,高分辨率也就意味着高DPI,对于桌面程序而言,除了先天就支持高DPI的框架外(如UWP.Electron等),大部分桌面程序如果不进行高DPI的适配,往往会出现界面模糊.控件错位.文本显示不全等问题. 目前网上关于高DPI适配的文章很少,大多只是某个问题点的解决.某个DPI相关概念的讲解,繁繁杂杂不成系统,也无迹可循. 本人曾对自己的软件进行过高DPI的适配,在适配的过程中,遇到了很多问题,这些问题中有…
本文主要解决两个问题 C# Winform高DPI字体模糊. 高DPI下(缩放>100%), UI设计器一直提示缩放到100%, 如果不重启到100%,设计的控件会乱飞. 建立测试程序 新建.Net Windows窗体应用 (Winform)工程 选择.Net6.0 将窗体尺寸定为 1000 x 1000 , 用于后面检测缩放是否正确 添加一个按钮 , 尺寸定为 150 x 50 添加一个图片框 , 尺寸定为 300 x 300 , 右键导入一张图片 添加测试代码 namespace WinFo…
SunnyUI.Net, 基于 C# .Net WinForm 开源控件库.工具类库.扩展类库.多页面开发框架 Blog: https://www.cnblogs.com/yhuse Gitee: https://gitee.com/yhuse/SunnyUI GitHub: https://github.com/yhuse/SunnyUI 帮助文档目录: https://www.cnblogs.com/yhuse/p/SunnyUI_Menu.html 欢迎交流,QQ群:  56829229…
做android开发绕不开的几个名词:ppi.dpi.px.sp.dp.那么它们的定义.区别和联系都是什么呢?这篇博客系统的做一个概述和总结. 1.基本概念 px:pixel,像素,电子屏幕上组成一幅图画或照片的最基本单元 pt: point,点,印刷行业常用单位,等于1/72英寸 ppi: pixel per inch,每英寸像素数,该值越高,则屏幕越细腻 dpi: dot per inch,每英寸多少点,该值越高,则图片越细腻 dp: dip,Density-independent pixe…
上一篇博客说了一下.9.png图片http://blog.csdn.net/qq_23195583/article/details/46737419 当然,点九的是指的能够进行拉伸的.那么假设图片不能拉伸呢,那么要怎么去处理这些问题呢,能够研究一下其它的app是怎么处理的,博主下载了几个应用的apk,然后看了一下里面的分类,以及图片的设置 这个是百思不得姐的,側面看出这个应用的api使用的版本号比較高 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/f…
场景: 已经更改成大小可随dpi改变,可是在用applyresoures()之后(添加更改语言功能),发现控件大小失真. 分析:applyresoures()是把该控件的属性改为程序设计的固定大小,不会随着dpi改变. 解决办法: 暂时先用笨拙简单的方法,先记载下所有控件的大小位置属性,然后再赋值过去.…