jjzjj

DOMPDF_DPI

全部标签

c++ - 真的需要 DPI 意识吗?

我正在学习如何使用GDI/GDI+绘制GUI,我发现了这个http://msdn.microsoft.com/en-us/library/windows/desktop/dd756596(v=vs.85).aspx#step_2__declare_that_the_application_is_dpi-aware是否每个应用程序都进行该计算以便正确显示或什么?有人可以解释如何计算按钮、图像和窗口上所有控件的客户端坐标,以便它们在不同分辨率下具有相同的对齐方式吗?提前致谢。 最佳答案 使用GDI,您可以使用GetDeviceCaps函

wpf - C# 在 Windows 中为每个监视器获取 DPI 缩放

我正在使用WPF应用程序中的代码,该应用程序需要计算出Windows中每个显示器的DPI缩放大小。我能够计算出主屏幕的DPI,但出于某种原因我不知道如何获得其他显示器的比例-其他显示器都返回与主显示器相同的DPI。有一些代码可以执行此操作,请耐心等待。第一组代码处理基于HWND获取DPI。该代码获取事件监视器,然后检索DPI设置并将数字与96DPI(通常为100%)的比率进行比较。publicstaticdecimalGetDpiRatio(Windowwindow){vardpi=WindowUtilities.GetDpi(window,DpiType.Effective);dec

c++ - WM_POINTER 和高 DPI 设置

我已经在桌面触摸屏上使用Windows8TouchAPI(WM_POINTERDOWN/WM_POINTERUPDATE/WM_POINTERUP)工作了一段时间.然后我在Windows8平板电脑上尝试了我的测试程序,发现我的应用程序无法准确检测到用户触摸屏幕的位置。另一方面,使用鼠标效果很好:我得到了正确的坐标。由于我启用了EnableMouseInPointer(TRUE)模式,这意味着正在使用相同的代码来处理鼠标事件和触摸事件,这至少意味着我的代码在某种程度上可以正常工作。我发现,平板电脑启用了高DPI模式,使用户可以触摸屏幕上本来很小的东西。当我更改平板电脑上的DPI以消除缩放

c - 当 DPI 设置为 150% 时关闭 Aero (Windows 7),全屏窗口仅覆盖任务栏

我有一个相当标准的C++程序,我在其中创建了一个全屏窗口(带有两个子窗口)。在我的Windows10开发计算机上,此窗口会填满整个屏幕并覆盖任务栏。在Windows7上,它不覆盖任务栏。经过一些试验,似乎如果我关闭Aero,程序将覆盖任务栏!我还创建了一个快速的C#/WPF应用程序,无论Aero的状态如何,该应用程序都能够覆盖任务栏。我是否缺少窗口消息或窗口的创建选项?这是定位和创建窗口的代码//Getahandletotheprimarymonitor,whichbydefinitionhasitstop//leftcornerat(0,0).constPOINTptZero={0,

excel - 如何防止因 DPI 变化而缩放?

我在PowerpointVBA宏中使用Shapes.AddOLEObjectPowerpoint功能来获取Excel图表文件(扩展名:.xls)单击[显示图表]按钮。SetshapeOnPPT=ActivePresentation.Slides.FindBySlideID(mySlideID).Shapes.AddOLEObject(Left:=100,_Top:=100,Width:=500,Height:=400,FileName:="c:\ThisDoc\testing.xls",Link:=msoTrue)问题在我更改我的计算机显示器的DPI/分辨率并单击[显示图表]按钮后,新

windows - 图标分辨率 : Pixels vs DPI

当我尝试研究为Windows制作图标,以及在保存之前我应该​​在我的.ico文件中保留什么大小/分辨率的图像时,有太多奇怪的信息。有人说在96DPI中放置16x16、24x24、32x32、48x48...等等。这就是让我恼火的地方,我觉得这没有任何意义。不是1像素=1像素吗?为什么他们坚持要将DPI混入其中? 最佳答案 永远正确的是1像素=1像素。真正改变的是像素在具有不同屏幕密度的各种显示器上的大小。这就是DPI所描述的-每英寸的点数(像素)。但是在图像大小的上下文中使用DPI只有当您将它与英寸(厘米)结合使用时才有意义。例如“

c++ - SetWindowPos() 跨进程 DPI 感知

我正在创建一个程序,它使用SetWindowPos()从另一个进程移动/调整窗口大小。我自己的程序是PROCESS_PER_MONITOR_DPI_AWARE。其他程序可以是PROCESS_DPI_UNAWARE、PROCESS_SYSTEM_DPI_AWARE或PROCESS_PER_MONITOR_DPI_AWARE中的任何内容。因为我自己的程序是PROCESS_PER_MONITOR_DPI_AWARE,所以我传递给SetWindowPos()的坐标是物理坐标。我现在要做的是将客户区的大小调整到逻辑坐标中的特定大小。我尝试做的是获取放置窗口的显示器的DPI作为screenDPI。

c# - 在 C# 中更改 "Override high DPI scaling behavior"

我们在WinForm中有一个控件(CefSharp控件),当用户屏幕在Windows上设置为125%时,该控件会出现图形伪影。它不仅仅是控件,独立的Chrome在一定程度上做到了。我们能够修复工件的唯一方法是更改​​下图所示的exe设置。有没有办法在代码中更改它?编辑:这不是重复的。因为让应用程序了解DPI与DPI缩放比例不同 最佳答案 方式1.如何使用注册表覆盖高DPI缩放(选中复选框)启动注册表编辑器并导航到此键:HKEY_CURRENT_USER\­Software\­Microsoft\­WindowsNT\­Current

c# - DPI 意识 - 在一个版本中没有意识到,在另一个版本中有系统意识

这个问题在这里已经有了答案:WindowsFormswindowchangesitssizewhenIcreateaWPFwindow(3个答案)关闭4年前。所以我们遇到了这个非常奇怪的问题。我们的应用程序是C#/WinForms应用程序。在我们的6.0版本中,我们的应用程序不支持DPI。在我们的6.1版本中,它突然变得支持DPI。在6.0版本中,如果您以高DPI运行它,它会使用Windows位图缩放,这很好,因为这不会影响屏幕布局。在6.1版本中,由于某种原因它变得可识别DPI,因此用户界面变得困惑。我们现在无法解决此问题。我们有数百个屏幕,因此让它们在DPI感知模式下正常工作需要花

c# - 如何在 C# .NET 中获取 DPI?

我正在尝试使用C#构建Windows窗体应用程序。如何在.NET中获取DPI?我之前看过有DPIX和DPIY,可以在.NET中使用它们来获取当前的DPI。对吗?谢谢大家。 最佳答案 使用Graphics类的实例。您可以在表单中使用以下内容(可以在表单的Load事件处理程序中):floatdx,dy;Graphicsg=this.CreateGraphics();try{dx=g.DpiX;dy=g.DpiY;}finally{g.Dispose();} 关于c#-如何在C#.NET中获取