一个长度是由一个数字和一个单位组成,java屏幕绘制实际上采用的是象素单位,即px,这是一个相对单位。其他单位还包括,相对单位: * em (em,元素的字体的高度) * ex (x-height,字母 "x" 的高度) * px (像素,相对于屏幕的分辨率) 绝对单位: * in (英寸,1英寸=2.54厘米) * cm (厘米,1厘米=10毫米) * mm (米) * pt (点,1点=1/72英寸) * pc (帕,1帕=12点) 输出到纸介质只能用绝对单位。
px换算cm公式 1px=(4/3)*(1/72)*(2.54) cm1px=(4/3)pt
给你一段我的代码: public static float VLtoDL(int l)//象素距离向实际距离的转换函 { int Sres=Toolkit.getDefaultToolkit().getScreenResolution();//获取屏幕分辩率 double rl=(float)l/(float)Sres*25.4;//由象素化为毫米
能不能讲得具体点,如何用cm来代替象素..
多交流。。
* ex (x-height,字母 "x" 的高度)
* px (像素,相对于屏幕的分辨率)
绝对单位: * in (英寸,1英寸=2.54厘米)
* cm (厘米,1厘米=10毫米)
* mm (米)
* pt (点,1点=1/72英寸)
* pc (帕,1帕=12点)
输出到纸介质只能用绝对单位。
1px=(4/3)*(1/72)*(2.54) cm1px=(4/3)pt
public static float VLtoDL(int l)//象素距离向实际距离的转换函
{
int Sres=Toolkit.getDefaultToolkit().getScreenResolution();//获取屏幕分辩率
double rl=(float)l/(float)Sres*25.4;//由象素化为毫米
return (float)(rl*(float)mapBlc/1000f);
}