C# MetaFiles(WMF) 在 2 个不同的应用程序中检测不同的尺寸
C# MetaFiles(WMF) detect different dimensions in 2 different Applications
我创建了一个控制台应用程序和一个 MVC 网站。两者都是加载像 WMF 这样的图元文件的确切代码。
我想检测这些文件的大小。
System.Drawing.Image imgFile= System.Drawing.Image.FromFile(mfFile);
int pixelWidth = imgFile.Width;
int pixelHeight = imgFile.Height;
我的控制台应用程序检测到 1921x1081 像素(这是正确的),我的 Web 应用程序检测到 1025*769 像素。
有谁知道为什么完全相同的文件根据应用程序具有不同的维度?
图元文件的分辨率与位图不同。所以你可以简单地忽略这个问题,因为你可以绘制任何大小的图元文件。
然而,原因可能是您的 OS 执行控制台应用程序的位置具有自定义 DPI 设置(可能是 Windows 自动调整它,例如,如果您有 4K 显示器).尝试通过 DPI 设置调整报告的大小,看看是否得到相同的结果。
阅读实际设置并不明显,但您可以在此处找到解决方案:
我创建了一个控制台应用程序和一个 MVC 网站。两者都是加载像 WMF 这样的图元文件的确切代码。
我想检测这些文件的大小。
System.Drawing.Image imgFile= System.Drawing.Image.FromFile(mfFile);
int pixelWidth = imgFile.Width;
int pixelHeight = imgFile.Height;
我的控制台应用程序检测到 1921x1081 像素(这是正确的),我的 Web 应用程序检测到 1025*769 像素。
有谁知道为什么完全相同的文件根据应用程序具有不同的维度?
图元文件的分辨率与位图不同。所以你可以简单地忽略这个问题,因为你可以绘制任何大小的图元文件。
然而,原因可能是您的 OS 执行控制台应用程序的位置具有自定义 DPI 设置(可能是 Windows 自动调整它,例如,如果您有 4K 显示器).尝试通过 DPI 设置调整报告的大小,看看是否得到相同的结果。
阅读实际设置并不明显,但您可以在此处找到解决方案: