设置蓝叠分辨率及dpi设置和dpi

Resolution and Screen Sizes
Phone 8支持WVGA、WXGA、720p三种分辨率,这与只支持一种WVGA分辨率的Windows Phone 7.1有很大不同,在Windows Phone 8 Update 3中,还加入了对1080p分辨率的支持,下面介绍了如何对不同分辨率进行适配,以及与其他平台的对比。
WVGA:分辨率480*800,纵横比:15:9,与Windows Phone 7.1唯一支持的分辨率相同。
WXGA:分辨率768*1280,纵横比15:9,对480*800按照1.6x倍率缩放。
720p:分辨率720*1280,纵横比16:9,对480*853按照1.5倍缩放(对480*800按照1.5倍缩放后在高度上再增加80个像素)
1080p:分辨率,纵横比16:9,对480*853按照2.25倍缩放(注意:在系统内部,对于1080p分辨率的屏幕,ScaleFactor属性返回的值仍然与720p相同,是1.5,而不是其实际缩放倍率2.25,系统内部实际上是将各种针对于720p的图片资源应用于1080p分辨率,而不是为1080p分辨率单独准备一套资源)。
下图展示了对于不同分辨率的显示效果。
iPhone与Windows Phone情况类似,支持的分辨率较少,目前主流只有普通屏幕的320*480,Retina屏幕的640*960和,适配起来也相对容易。但是Android平台由于其特有的开放性,屏幕尺寸和其所支持的分辨率也多种多样,主流分辨率有480*800、480*854、540*960、720*80等,同时,对于Android 4.0以上的系统,有些厂家使用了系统自带的虚拟键盘,这样会占用一定的屏幕高度,这样,对于应用开发者来说,要做很多工作来确保显示给用户的界面不会出现偏差与失真。
DPI即Dots&per&inch,表示每英寸的点数,也称像素密度。只知道分辨率和屏幕尺寸还不能很好的描述出屏幕的特性,例如,对于同样分辨率、大小分别为4英寸和14英寸的屏幕,他们的DPI显然不同,4英寸屏幕清晰度要远好于14英寸的屏幕。
各开发平台都提供了获取屏幕DPI的接口,Android中利用DisplayMetrics获取DPI,IOS利用UIScreen获取DPI,与这些接口相对应,在windows phone和windows应用商店应用开发中您可是使用DisplayProperties或DisplayInformation,以下详细介绍windows phone和windows平台上获取屏幕DPI的方法。
您可以使用DisplayProperties类的LogicalDpi&属性获取屏幕DPI,该属性为只读属性。该类位于&Windows.Graphics.Display命名空间,只要引入该命名空间,您可以在程序的任何地方获取屏幕DPI。但是DisplayProperties在windows 8.1之后将不再被支持,相代替微软为您提供了DisplayInformation,DisplayInformation不仅提供了获取屏幕DPI LogicalDpi&属性,还提供了RawDpiX和RawDpiY属性以获取沿X轴和Y轴每英寸的点数。所以您最好使用DisplayInformation,以便您的程序能在windows 8.1及更高版本中能够很好的被支持。
更多信息请参见DisplayInformation.、DisplayProperties、获取DPI示例
由于所有的Windows Phone 7.1手机只支持一种分辨率,所以只要你的布局在一台Windows Phone 7.1上展示良好,其在所有的Windows Phone
7.1手机上都会显示良好,你无需考虑每个控件如何伸展和流动。
在Windows Phone 8中,你就需要不得不调整你的控件和UI元素的布局,使其在每个分辨率的宽高比下都会正常显示。由于Windows Phone
8 Update 3支持两种不同的屏幕宽高比:15:9和16:9,对于一种宽高比显示正常的控件可能会在另一种宽高比下出现预料之外的情况。
为了使页面在WVGA、WXGA、720p、1080p的分辨率下正确显示,不要在代码中将控件的高度、宽度和间距写成固定的。在你从工具箱中将空间拖出来后,请将自动添加的间距删除或者仔细进行测试。
你可以使用像Grid control这样的容器来创建自适应的布局,将控件放到grid中,并使用*和Auto来设置行和列的高度和宽度,而不是将控件的高度和宽度固定的写在代码中。这样,应用程序就会拉伸或者收缩来自动适应当前用户手机的高度和宽度。如果你将宽度和高度固定地写在代码中,则布局就不会根据分辨率来自动适配了。
注意:一定要确保你的应用在每一种宽高比(15:9和16:9)下进行测试,对每一种分辨率进行测试并不是严格要求的,除非你为每一种分辨率使用了不同的图片资源。
下面的XAML展示了使用Grid control来实现这些布局的代码。
这个应用对于WVGA、WXGA、720p、1080p具有自适应的动态布局,由于将输出框的Height属性设置成了Auto,它在WVGA和WXGA的手机上具有相同的尺寸,按钮会缩放以适应剩余的空间。在720p和1080p分辨率下,按钮会稍稍高于WVGA和WXGA分辨率上的尺寸。
你可以设置MinHeight和MaxHeight属性来设置最小高度和最大高度,一定要记住,在屏幕上任何方向小于8mm的元素都会无法使用户可靠地按下,你可以使用MinHeight和MinWidth来确保交互控件不会过度缩小。你可以结合使用这些属性来使布局对于WVGA分辨率缩小,但是对于更高的分辨率不会伸展。
在iPhone上的情况
基于IOS SDK 4.0及以后版本的应用程序需要在不同分辨率设备下运行,iPhone以一种简单的方式来支持多分辨率屏幕的情况,大部分处理不同类型屏幕的工作已经由系统框架处理。但应用程序本身也需要做些工作来修正位图图片,如果应用本身要利用像素,也需要做额外的工作。但是由于iPhone设备的规格比较统一,屏幕尺寸和分辨率种类较Windows Phone还要少,且屏幕的宽度完全一致,只是在高度上略有差异,适配起来也更加简单。
iPhone的3.5寸屏幕有普通屏幕320*480和Retina屏幕640*960,这两种分辨率恰好长宽均为2倍,iPhone中规定,对于普通屏幕,一个像素对应一个“点”,对于Retina屏幕,两个像素对应一个“点”,所以这两种屏幕都是320*480个点,另外还有iPhone5系列的640*1136,转换成点就是320*568,所以只需考虑在高度上的适配即可。一般情况下,只需要在设置控件位置之前,判断一下当前的self.view的高度,即可按需安排控件的位置。
在Android上的情况
Android程序的分辨率种类和像素密度多种多样,对于应用程序,Android系统对于各种设备提供了一致的开发环境并完成了大部分适配用户界面的工作,同时,系统也提供了一些API来让你针对特定分辨率和像素密度来控制应用程序的用户界面。在安排Android应用程序的布局之前,首先要了解以下的概念:
屏幕尺寸:屏幕的物理尺寸,通过屏幕的对角线来衡量,为了简单起见,Android将屏幕尺寸分成了四个广义的尺寸:小、正常、大、特大。
屏幕密度:屏幕物理区域内的像素量,通常指的是DPI(每英寸点数),例如,一个低密度屏幕与正常密度或者高密度的屏幕相比,在给定区域内具有较少的点数。为了简单起见,Android将屏幕密度分成了四个广义密度:低、中、高和超高。
方向:从用户的视角看到的屏幕的方向:横向或者纵向。也就是说屏幕的宽高比是宽的或者是高的。
分辨率:屏幕上的物理像素总数,当添加对多屏幕的支持时,应用程序并不直接与分辨率打交道,而是应该关心屏幕尺寸和像素密度。
密度独立的像素(dp):当你定义UI布局的时候应该使用的虚拟像素单元,以一种密度无关的方式来表达布局。
从Android1.6开始,就已经提供了对多种屏幕尺寸和密度的支持,你可以利用系统的这种特性来优化你的应用程序,使其不仅能正确显示,还能够为使用者在每一种屏幕上提供最佳的用户体验。在为不同的屏幕设计UI时,设定一个基准,比如以480*800、密度为1.5定为hdpi base,以720*1280、密度为2.0定为xhdpi base。如此设置,其他相同密度值的分辨率,都会比这些基准略大,屏幕变大之后的布局调整要比变小的调整要容易的多,在需要调整的地方进行判断,并调整空间的LayoutParams即可。
图像、视频、音频和图标这样的资源占据了一个应用的很大部分,将对应所有分辨率的资源都包含在你的应用中会消耗应用中的许多空间,对于大多数应用,我们建议只包含WXGA的资源,WXGA的资源质量很高,并且对其他分辨率自适应尺寸也比较好。
由于WXGA/WVGA和720p/1080p分辨率有着不同的宽高比,在一些情况下可能需要在应用中包含针对不同分辨率的独特图像。当你想要为你的应用程序添加针对所有分辨率的支持时,可以使用下边的步骤检测设备的分辨率然后在运行时载入相关图片。
在运行时载入与分辨率相关的图片
在你的工程中,添加针对WVGA、WXGA、720p分辨率的图片,本例中,我们将其命名为MyImage.screen-wvga.png、MyImage.screen-wxga.png和MyImage.screen-720p.png。
将图片的Copy to Output Directory属性设置为copy always。
在你的工程中添加一个名为ResolutionHelper.cs的类,并将下属代码复制并粘贴到其中。
public enum Resolutions { WVGA, WXGA, HD };
public static class ResolutionHelper
private static bool IsWvga
return App.Current.Host.Content.ScaleFactor == 100;
private static bool IsWxga
return App.Current.Host.Content.ScaleFactor == 160;
private static bool IsHD
return App.Current.Host.Content.ScaleFactor == 150;
public static Resolutions CurrentResolution
if (IsWvga) return Resolutions.WVGA;
else if (IsWxga) return Resolutions.WXGA;
else if (IsHD) return Resolutions.HD;
else throw new InvalidOperationException("Unknown resolution");
上面的类中使用ScaleFactor属性来确定设备的分辨率。
添加一个名为MultiResImageChooser.cs的类,并在其中包含下属代码。这个类使用前面创建的ResolutionHelper.cs类来确定设备的分辨率,并针对检测到的分辨率,根据相关的图片URI创建一个新的BitmapImage并返回。
using System.Windows.Media.I
public class MultiResImageChooserUri
public Uri BestImage
switch (ResolutionHelper.CurrentResolution)
case Resolutions.HD:
return new Uri("MyImage.screen-720p.jpg", UriKind.Relative);
case Resolutions.WXGA:
return new Uri("MyImage.screen-wxga.jpg", UriKind.Relative);
case Resolutions.WVGA:
return new Uri("MyImage.screen-wvga.jpg", UriKind.Relative);
throw new InvalidOperationException("Unknown resolution type");
在MainPage.xaml中,添加一个Image元素并将它的Source属性绑定到MultiResImageChooser.cs类的返回值上。
在App.xaml中,在元素中添加下属xmlns命名空间映射。
xmlns:h="clr-namespace:MultiResSnippet"
在App.xaml中,添加下述应用程序资源。
完成上述步骤之后,系统会自动适配对应分辨率的图像资源,对于720p和1080p的分辨率,系统仍然使用的是同一套资源,自动按比例进行缩放。
在iPhone上的情况
在iPhone上为不同分辨率提供特定图片资源可以有如下几种方式:在应用程序中为每一种分辨率提供单独的图片、提供高分辨率图片供其缩放、提供矢量内容等。如果不对资源进行自动适配,对于3.5寸普通屏幕和Retina屏幕,由于其宽高比例一致,自动缩放之后不会造成比例失真,对于4寸屏幕,则会有两种选择:1、 拉伸以铺满屏幕(这样会造成比例失真),2、保持比例(两端各留出44个点的高度的黑边)。所以,为了能够完美支持4寸Retina屏幕,最好为其提供对应特定分辨率的图片资源。
在Android上的情况
在Android上面也一样,对于多分辨率,在res目录下,创建drawable-ldpi、drawable-mdpi、drawable-hdpi三个目录,分别存放低分辨率、中分辨率、高分辨率的图片,系统会根据机器的分辨率分别在这几个文件夹中寻找对应的图片。如果不想提供多套图片,则可以只提供最大分辨率的图片,让系统自动执行图片缩放。同时,对于Android系统,有一种创新的格式叫做“9.png”,这是一种可以拉伸却不失真不变形的图片格式,充分利用这种图片,也可以达到很好的效果。
为了针对所有分辨率显示启动画面,使用名称为SplashScreenImage.jpg分辨率为768*1280的单个文件,手机会自动将其缩放到正确的尺寸。
如果想要对所有分辨率提供像素完善的启动画面,你可以以下面的名称来添加图片。
SplashScreenImage.Screen-WVGA.jpg
SplashScreenImage.Screen-WXGA.jpg
SplashScreenImage.Screen-720p.jpg
Phone 8 Update 3将会默认在1080p的手机上使用720p的启动画面。
所有的启动画面图片文件必须在应用程序工程的根目录下。
更多信息,可以查看如何为Windows
Phone创建启动画面。
在iPhone上的情况
对iPhone设置启动画面,如果普通分辨率的资源名称为:Default.png,则其Retina屏幕对应图片应该是Default@2x.png,4英寸屏幕对应的图片应该是Default-568h@2x.png。
在Android上的情况
在Android上,启动画面是作为一层布局写入到程序中的,载入启动画面的方法与载入背景图片的方法一致,可以只提供一张图片供系统自动缩放,也可以提供多套资源供不同的分辨率使用,这里同样推荐使用“9.png”图片格式,以达到只提供一张图片,且缩放情况下也不会发生失真的目的。
对于磁贴和应用程序图标,你必须只添加针对WXGA分辨率的图片,手机会针对WVGA、720p和1080p的屏幕自动将图片缩放到正确的尺寸。更多关于磁贴以及其尺寸的信息,请参见Windows Phone的磁贴。
在iPhone上的情况
在iPhone中,默认情况下可以只提供一张57*57的图片Icon.png作为应用程序图标,同时提供一张29*29的图片Icon-settings.png作为设置区域通用的图标。以上图标在Retina屏幕上会自动缩放适应,为了提供高分辨率的屏幕,可以提供114*114的图片Icon@2x.png和Icon-settings@2x.png的图片。
在Android上的情况
在Android设备上,由于分辨率众多,应用程序的图标也要针对每种分辨率进行设计,通常情况下,需要有36*36的LDPI图标、48*48的MDPI图标、72*72的HDPI图标、96*96的XHDPI图标,这些图标分别放在drawable-ldpi、drawable-mdpi、drawable-hdpi和drawable-xhdpi文件夹中,这样即可适应不同分辨率的手机。
在Android中,主要以密度独立像素(dp)来进行描述,以dp来描述的启动图标为48*48dp,通知栏上的图标大小为24*24dp。
Windows Phone 的布局
Windows Phone 的屏幕方向
Windows Phone 的布局和面板
Windows Phone 的磁贴
Windows Phone 的磁贴设计准则
其它微软站点  在PC机上显示正常,在高分辨率下的Pad上,显示出现问题:
    1、显示在屏幕最右端的窗体(控件)显示不出来;
    2、截图时,被截图的界面字体文字变大,界面因此显示不全。
二、解决方法:
  方法一:WPF上使用WPF方式获取屏幕大小,而不是Winform的获取屏幕大小的方式。
//Size primarySize = Screen.PrimaryScreen.Bounds.S
double dWidth = System.Windows.SystemParameters.PrimaryScreenW
double dHeight = System.Windows.SystemParameters.PrimaryScreenH
  方法二:Winform解决方法:
  1、设置窗体的背景图片方式改为可缩放方式(Zoom):&BackgroundImageLayout = ImageLayout.Z
  2、依据DPI扩展拷贝图片的大小,设置拷贝的图片的DPI(bmp的SetResolution方法)
BackgroundImage = GetDestopImage();
BackgroundImageLayout = ImageLayout.Z
private Image GetDestopImage()
float rate = dpi / 96;
Rectangle rect = Screen.GetBounds(this);
Size sz = new System.Drawing.Size();
sz.Width = (int)(rect.Size.Width * rate);
sz.Height = (int)(rect.Size.Height * rate);
Bitmap bmp = new Bitmap(
sz.Width, sz.Height, PixelFormat.Format32bppArgb);
bmp.SetResolution(dpi, dpi);
Graphics g = Graphics.FromImage(bmp);
g.CopyFromScreen(0, 0, 0, 0, sz);
//IntPtr gHdc = g.GetHdc();
//IntPtr deskHandle = NativeMethods.GetDesktopWindow();
//IntPtr dHdc = NativeMethods.GetDC(deskHandle);
//NativeMethods.BitBlt(
NativeMethods.TernaryRasterOperations.SRCCOPY);
//NativeMethods.ReleaseDC(deskHandle, dHdc);
//g.ReleaseHdc(gHdc);
//bmp.Save("test.png");
  3、修改拷贝内容位置信息
private void DrawLastImage()
float rate = dpi / 96;
int reWidth = (int)(Width * rate);
int reHeight = (int)(Height * rate);
using (Bitmap allBmp = new Bitmap(
reWidth, reHeight, PixelFormat.Format32bppArgb))
allBmp.SetResolution(dpi,dpi);
using (Graphics allGraphics = Graphics.FromImage(allBmp))
allGraphics.InterpolationMode =
InterpolationMode.HighQualityB
allGraphics.SmoothingMode = SmoothingMode.AntiA
allGraphics.DrawImage(
BackgroundImage,
Point.Empty);
DrawOperate(allGraphics);
allGraphics.Flush();
Rectangle reSelectImageRect = new Rectangle();
reSelectImageRect.X = (int)(SelectImageRect.X * rate);
reSelectImageRect.Y = (int)(SelectImageRect.Y * rate);
reSelectImageRect.Width = (int)(SelectImageRect.Width * rate);
reSelectImageRect.Height = (int)(SelectImageRect.Height * rate);
Bitmap bmp = new Bitmap(
reSelectImageRect.Width,
reSelectImageRect.Height,
PixelFormat.Format32bppArgb);
bmp.SetResolution(dpi, dpi);
Graphics g = Graphics.FromImage(bmp);
g.DrawImage(
reSelectImageRect,
GraphicsUnit.Pixel);
g.Flush();
g.Dispose();
  4、获取DPI代码:
public static float getLogPiex()
float returnValue = 96;
RegistryKey key = Registry.CurrentU
RegistryKey pixeKey = key.OpenSubKey("Control Panel\\Desktop");
if (pixeKey != null)
var pixels = pixeKey.GetValue("LogPixels");
if (pixels != null)
returnValue = float.Parse(pixels.ToString());
pixeKey.Close();
pixeKey = key.OpenSubKey("Control Panel\\Desktop\\WindowMetrics");
if (pixeKey != null)
var pixels = pixeKey.GetValue("AppliedDPI");
if (pixels != null)
returnValue = float.Parse(pixels.ToString());
pixeKey.Close();
catch(Exception ex)
returnValue = 96;
return returnV
阅读(...) 评论()  --屏幕分析报告,屏幕分析,分析报告&&[&& 原创&&]&& 作者:
  三.分辨率分析  分辨率一直是衡量手机屏幕的重要指标,以非常热门的5.5寸市场为例,我们可以在5.5寸手机上找到、、这3大主流分辨率,其像素数字差异可以达到400%之多。而以上产品对应的产品价格也覆盖800元—6000元区间段,可见分辨率是帮助用户在特定尺寸下区分手机档次的重要指标。&&&&经过数年的发展,1080P已经正式成为了手机市场的第一大指标,720P依然依靠着成本优势占领低价格手机市场的主要份额。1440P(常被称作2K)分辨率虽然已经成为了不少高端产品的配置,但是无法真正意义上成为用户购买这款高端手机的决定性理由,iPhone6&Plus以1080P屏幕占据5000元以上市场最高占有率也足以说明问题。  低分辨率产品存在的意义其实与4.5寸以下产品颇为相似,大品牌的低价格老型号产品(诸如iPhone5s)在这个分辨率段成为了绝对主力,毕竟绝大多数消费者不是专家,以品牌作为第一挑选标准的消费者并不是极少数人,对于高品牌低价格取向的用户来说,低分辨率产品是唯一的选择。  四.像素分析  从上图中我们可以看到,手机在这半年当中手机屏幕的像素仍然处于不断增加的趋势,从年初的162.45万提升到了177.98万,这里边的第一功劳在于2015年大量出现的1000元级1080P屏幕手机,高端产品1440P普及化也是重要原因,结合以往数据来看在2016年Q1—Q2平均像素数量就可以达到207.36万全高清线,届时手机全高清时代才算真正意义上的到来。  五.DPI分析  相信大家还记得炒起手机屏幕DPI大战的源头正是苹果提出视网膜屏幕的概念,当年苹果提出的300DPI早被各大厂商所超越。我们从上图可以看到今年年初手机屏幕DPI就已经达到了360.60的高数字,年中更是提升到了379.21,而且DPI上升的势头并没有减缓。  从消费心理学的角度来讲,用户永远希望自己能够拥有更加清晰的屏幕,而高DPI对于非专业用户来说就是更清晰的代名词。虽然在很多条件下400DPI与500DPI的差距已经足够小,但是只要价格允许,用户一定会选择数字更高的产品。换句话来讲,影响手机DPI高度的最关键因素是成本,只要在成本考量的范畴内值得,厂商一定要生产尽可能高DPI产品,大多数用户也一定会选择尽可能高DPI的产品。  六.总结  总体来讲,手机市场的屏幕尺寸混战已经结束,5.0-5.5寸产品确立了最主流地位,5.5-6.0寸产品与4.5-5.0寸产品分别占据2个最大的细分市场:高性能强功能市场;性能便携均衡市场,大尺寸主打娱乐性与平板替代性,小尺寸更多是老产品也是未来可以延续一段时间的现实。  虽然尺寸已经固定,但是对于屏幕质量的提升仍然没有停止,消费者仍然愿意选择更高分辨率,更高DPI的产品,在成本允许的前提下,更高的分辨率与DPI的确会吸引更多用户购买。在屏幕比例等指标上动心思并不能产生真正的影响力,16:9已经是手机市场大势所趋,应用UI也全面为16:9分辨率而设计,即使有心作为能影响的也不过是标新立异的用户而已。
......提示:支持键盘“← →”键翻页
版权说明:该文章由中关村在线ZDC调研中心版权所有,未以书面授权不得转载或摘录。
投诉欺诈商家:
天津重庆哈尔滨沈阳长春石家庄呼和浩特西安太原兰州乌鲁木齐成都昆明贵阳长沙武汉郑州济南青岛烟台合肥南京杭州东莞南宁南昌福州厦门深圳温州佛山宁波泉州惠州银川
本城市下暂无经销商&&|&&责编:王晔
1DPI与CPI是什么关系?&&&&时代在进步,科技在发展,如今的显示器越来越大,分辨率越来越高。但与此同时的分辨率也越来越高,动辄上万的DPI仿佛标榜着自己是多么优秀。然而DPI究竟怎么才算合适,下面笔者就为大家来简单分析一下DPI与显示器分辨率的关系。&&&&首先我们来明确一下DPI的含义是什么,DPI是Dots&Per&Inch(每英寸所打印的点数)的缩写,是打印机、鼠标等设备分辨率的单位。这是衡量打印机打印精度的主要参数之一,一般来说,该值越大,表明打印机的打印精度越高。DPI与CPI是什么关系&&&&DPI是我们最常用的鼠标分辨率单位,但其实DPI这个说法并不是最准确的。应为我们通常讲的DPI是指每英寸的像素点,而每英寸点数中的“点”,在屏幕上并不是不变的。他受到分辨率等因素的影响,所以并不是唯一对应屏幕上的像素点。有可能这个点是4个像素,也有可能是1个像素。&&&&而CPI则指的是,每英寸鼠标采样次数。就是鼠标移动一英寸,鼠标自己能够从移动表面上采集到多少个点的变化。这种属性完全关乎于鼠标自己的性能,不再牵扯到显示器的问题。所以,CPI可以更准确的反应出鼠标的精度。&&&&但是由于大多数鼠标生产商已经适应了DPI的称呼方式,而玩家也习惯了这种叫法,所以目前大部分还延续DPI这种表示方式。&&&&可能这样说还不够直观,下面笔者再来根据实际情况为大家介绍一下,DPI与移动距离的关系。2DPI与移动距离的关系&&&&下面我们再来说说的DPI和显示器分辨率之间的关系,不过在这之前有个前提,就是以Windows鼠标设置为默认,提高指针精确度(加速度)关闭的情况下为基准测试条件的。Windows自带的鼠标灵敏度调节&&&&Windows鼠标设置是在早期鼠标分辨率都比较低,并且不可调的情况下,玩家调节鼠标移动速度的重要方式。其实Windows自带的移动速度调节已经算是插值&&&&但是,这种调节指针移动速度快慢的方法并不是调节鼠标自身的DPI,而是通过计算机的运算让鼠标实现移动速度上的变化。这样就直接导致了,鼠标在伪加速的时候,丢掉移动轨迹中的某个或某些点,这就造成了丢帧的现象。将指针速度调节至最大后&丢帧明显&&&&上图笔者也用比较简单的方式表达了Windows自带的指针速度调节选项对精准度的影响。首先笔者将鼠标DPI调节到3000,并未调节移动速度;下面的图笔者将DPI下调,并将指针移动速度拉到最大,找到与3000DPI相仿的移动速度进行了测试。&&&&我们可以明显看到,虽然鼠标速度均比较快,但显然3000DPI未经调节指针速度的圆形过度更细腻;而下方的圆形在笔者绘制的时候就感觉到指针很难控制,并且抖动非常厉害。提高指针精确度并不会真的提升精度&&&&让我们再来说说勾选【提高指针精确度】会带来的后果,现在这个选项在默认情况下是不勾选的。&&&&其实准确的说,这个选项的翻译应该是:【打开鼠标指针加速度】,开启这个选项之后,你的鼠标移动速度与指针移动速度不是一个一次线性关系,而是一个加速运动的关系。&&&&简单来说,勾选这个选项后,当你控制鼠标做了一个加速运动,指针同样会做一个加速运动。但要注意,这个加速运动并不受玩家自身控制。&&&&玩家也可以打开这个选项亲自尝试一下:把指针放在屏幕最左侧,快速移动鼠标到屏幕最右侧,然后在慢慢从最右侧移动到最左侧,你会发现虽然同样移动了一屏的距离,但鼠标在上走的路程却不一样。&&&&所以在加速度模式下,你的鼠标移动和屏幕上的指针移动是难以精确预测的。DPI与移动距离的算法&&&&似乎有些跑题,下面笔者为大家介绍一下DPI与鼠标实际移动距离的公式算法,首先以笔者目前的配置来计算。&&&&我的鼠标为1200&DPI,显示器分辨率为,那么鼠标在桌面上移动1英寸(2.54cm),显示器上移鼠标指针移动1200个像素点,横向只要鼠标在桌面上移动×2.54=4.064cm,鼠标指针就可以从显示器的最左移动到最右。鼠标横向移动一屏的实际距离公式&&&&上面是简单计算鼠标横向移动一屏的实际距离,目前笔者自己算出的数值约为4cm,这也是我自己比较习惯的手部移动距离。这个数值大体会控制在3-5cm左右,除非在一些激烈的游戏中,玩家需要大幅度转身或拉屏。&&&&不过世事无绝对,笔者的同事在使用1080P分辨率的时候依旧坚持自己的IE3.0,要知道IE3.0最高只有400DPI。那么我们可以算一下()×2.54=12.192cm,也就是说他的鼠标移动一屏,实际距离约为12cm,简直反人类,所以在玩游戏时我们经常能见到他拿着鼠标在疯狂的蹭……3关于回报率与插值&&&&除了DPI这个数值,中频繁出现的回报率也是让玩家比较难以理解的,从表面上来看,不管是125/250/500还是1000Hz,在调节后对鼠标的移动速度并没有什么影响,那么回报率这个数值到底是做什么的?下面笔者也通过几张图简单的来进行说明。125/500/1000Hz鼠标所绘的直线&&&&上图是分别在125/500/1000Hz的情况下,笔者用测试画出的直线(画直线的过程中三次尽量保持速度一致)。我们可以看出,在速度基本保持相同的情况下,回报率越高,鼠标每秒的轨迹就会越精确,几乎是以点来组成的直线。125/500/1000Hz鼠标所绘的圆形&&&&如果直线图表达的意思不够明确,我们可以看这个圆形图。最内侧为125Hz绘制,我们可以明显看到点与线之间的棱角,换句话说就是过度不够圆滑;中间的圆形为500Hz绘制,以我们肉眼看来的过度就已经相当圆滑了;而1000Hz所绘制的圆形依旧是由点来组成的。&&&&所以得出的结论就是,当回报率越低,鼠标移动的反馈速率就越低,所以我们可以清晰看到点与点之间的距离;而500Hz的时候其实已经达到性能与效果的平衡点;虽然理论上1000Hz拥有目前最好的反馈速率,也是就是图中最圆滑的效果,但很多鼠标实际上无法达到这种效果,反而事与愿违。&&&&下面我们就来简单说说鼠标中比较常见的现象——插值。关于插值&&&&鼠标插值是目前行业内比较普遍的现象,这不光出现在小厂商中,甚至包括很多大厂商也在这样做。&&&&对于插值,玩家的态度自然是反感的,虽然微小的插值并不会对鼠标的使用带来太大影响。但这毕竟是厂商不厚道,而且还有欺骗消费者的嫌疑。鼠标引擎&&&&那么如何辨别一款鼠标是否插值呢?这就需要玩家了解鼠标使用的引擎,并且知道引擎的硬件采样率,而如果鼠标的最大采样率高于这个值,那么则是经过插值处理了。&&&&对于插值,有玩家认为,如果我使用低一些的DPI是否就不会受到插值带来的影响呢?&&&&答案当然是否定的,举个例子,如果有个400/800/原生DPI的引擎,那么插值之后将会变成800/00&DPI,是每个档位的DPI都会翻倍,就算使用原本引擎有的800DPI,现在也是通过400DPI插值出来的。所以鼠标插值也是厂商偷工减料的好方法。鼠标引擎&&&&而回报率同样可以插值,比如本来是100Hz的回报率,要变成200Hz,无良的厂家就直接将上一次回报的数据,第二次直接复制发送给计算机,就变成了200Hz回报率。要变成1000Hz回报率,就将相同的数据连续发送10次就行了,不过从100Hz插值到1000Hz有点夸张,笔者只是举个例子。&&&&虽然插值肉眼看起来也没什么影响,但实际上,会产生严重的掉帧,因为鼠标将本来该回报的90%的数据都丢失了,或者说它本来就没有那些数据。4100寸电视多少DPI才够?&&&&最后我们回归一些实际的问题,在不久前笔者看到SONY发布了最新的旗舰新品,4K&HDR电视Z9D系列,其中最大尺寸就为100英寸,这也是索尼电视史上最大的一款产品。100寸的电视要多少DPI?&&&&现如今,很多玩家的客厅都成了第二娱乐场所,即便不玩游戏,将电脑与电视相连,看看电影也是极其惬意和方便的。&&&&那么100寸的电视究竟需要多少DPI才够呢?其实这是个很简单的问题,不管电视机的尺寸如何改变,但注意是“4K”,它的分辨率固定位,我们可以利用上文提到的公式。4K分辨率不管尺寸多少都通用&&&&如果根据笔者的使用习惯(横向移动一屏的实际距离4cm),那么已知距离可以反向计算,3840÷(4÷2.54)≈2440,也就是说使用2440左右的DPI可以获得与目前1080相同的效果。&&&&其实玩家应该早就发现,不管是显示器、电视或是投影,尺寸都不会影响到鼠标的DPI,真正有影响的还是分辨率。所以目前为止,5000左右的鼠标分辨率完全够用,即便是4K。当然如果你用4K显示器组三联屏的话,则需要7000甚至更高。
适用平台 连接方式
投诉欺诈商家:
天津重庆哈尔滨沈阳长春石家庄呼和浩特西安太原兰州乌鲁木齐成都昆明贵阳长沙武汉郑州济南青岛烟台合肥南京杭州东莞南宁南昌福州厦门深圳温州佛山宁波泉州惠州银川
本城市下暂无经销商

我要回帖

更多关于 分辨率150dpi怎么设置 的文章

 

随机推荐