转换像素为cm
回答
如果您不知道渲染像素的设备的DPI(或通常分辨率),则无法将像素转换为cm。
假设你有你的设备的DPI,那么你可以简单地做像素/ DPI * 2.54。
<思维>
px cm in cm cm
px : ---- * ---- = px * ---- * ---- = in * ---- = cm
in in px in in
... OK,单位是吧:) < /思>
像素和CM是不同的措施。像素是依赖于环境的。电脑屏幕有不同的分辨率和尺寸。例如在我的屏幕上,100px大约是2.7cm情况如何?
称之为 'ScreenPixelsPerInch' 属性:
dpix=sqrt((x1-x2)^2+(y1-y2)^2); %# calculate distance in pixels
pixperinch=get(0,'ScreenPixelsPerInch'); %# find resolution of your display
dinch=dpix/pixperinch; %# convert to inches from pixels
dcm=dinch*2.54; %# convert to cm from inches
或为一衬垫的方法:
dcm=sqrt((x1-x2)^2+(y1-y2)^2))/get(0,'ScreenPixelsPerInch')*2.54;
编辑:您可能要检查您的系统获得正确的屏幕尺寸和dpi。如果您知道显示器的尺寸和长宽比以及分辨率,这很容易完成。例如,我的设置:
宽屏16:9的23" 显示器在1920x1080像素的
h^2+w^2=23^2 and h/w=9/16
给
h=11.28 and w=20.05 inches
get(0,'Screensize')
回报[1 1 1920 1080]
和get(0,'ScreenPixelsPerInch')
回报96
所以1920/20.05 = 95.76
和1080/11.28 = 95.74
也许我很幸运,但这种方法为我工作。
什么是您的应用程序中的“像素”?
如果你的意思是屏幕像素,看看其他答案。如果您指图像像素,则需要知道图像的物理大小(高度,宽度),然后可以计算像素的宽度。
例如,如果您的图像是10x10 cm和512x512像素,则一个像素宽度为10/512 cm。以像素为单位乘以10/512的距离,得到以厘米为单位的距离。
这是正确的一般答案! – Bedo 2012-11-10 12:51:22
- 1. 转换像素CM在WPF
- 2. 像素2 CM转换的Javascript
- 3. 将像素转换为可点击图像的相对cm值?
- 4. 使用Regex.Replace()将cm转换为mm
- 5. 将形状大小转换为cm
- 6. 将mm转换为像素
- 7. 将像素转换为sp
- 8. 像素到像素转换
- 9. 转换像素
- 10. 旋转LAT,已转换为像素
- 11. 将DOM元素转换为图像?
- 12. 如何将像素转换为CGFloat?
- 13. 如何将像素转换为dp?
- 14. 转换为8bbp像素格式
- 15. 将像素转换为分钟
- 16. 将坐标转换为像素坐标
- 17. 将像素转换为画布
- 18. 将像素转换为多边形
- 19. 将2D像素数组转换为BufferedImage
- 20. 尝试将Facebook像素转换为HTML
- 21. Android:将点转换为像素
- 22. CSS将百分比转换为像素
- 23. 从坐标转换为像素
- 24. 将Drawing.Bitmap转换为Imaging.Metafile - 像素完美
- 25. Aforge,将像素数据转换为UnmanagedImage
- 26. X11:将像素值转换为RGB
- 27. 如何从字母转换为像素
- 28. 将像素转换为电子版
- 29. Android将像素转换为inchec,毫米
- 30. 将像素值转换为RGB格式
我不知道matlab,但通常操作系统提供的屏幕的DPI是伪造的,也就是说,它们只是用于获取缩放文本的一些线索(http://blogs.msdn。COM/B/oldnewthing /存档/ 2004/07/14/182971.aspx?的PageIndex = 1)。因此,用这种方法可能你永远不会获得“真实”的屏幕尺寸。 – 2010-06-09 16:48:01