窗体度量单位和打印机的度量单位 急 在线等侍 在vb里窗体和打印机的度量单位可通过设置它们的属性ScaleMode的来改变。默认为缇。在Delphi里其窗体的度量单位和打印机的度量单位是否有属性,可以改变,默认的度量单位是什么? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在Delphi里其窗体的度量单位是像素打印机的度量单位可以是“磅”、“像素”、“毫米”、“厘米”、“英寸”等几种度量单位在VB中默认的度量单位是缇,主要是用在打印机上的,大概是1缇=1/20磅Basic.NET将度量单位从Twips转换为pixels Anylib已经推出新版本!主要增加以下功能:1.数据库支持2.数据分组3.分页符4.多栏打印5.背景图欢迎到我们的网站下载试用版。http://www.anylib.com 据我所知,打印机的度量单位只认象素。屏幕的度量单位也是象素。但是一般的屏幕象素都要大于打印机的象素。如果你想不使用其他软件,使用DELPHI编程打印图片,你最好进行相应的换算。 Delphi改变打印机对象Printers的度量单位的属性是什么? 在USES中添加打印程序单元(Printers),尽管Delphi在生成窗体时会自动在USES部分加入许多程序单元,但打印程序单元却不在此列,只能手工给它加上。用GetDeviceCaps (Printer.Handle,LOGPIXELSX)获取当前打印机的水平分辨率。如果想让打印程序在任何打印机上都能正常地打印,你就必须改变你的度量单位。dpm:=trunc(dpi/25.4);//算出每毫米的打印机点数。MyMetafile:= TMetafile.Create;//创建图元文件TMetafileCanvas.Create(MyMetafile,printer.Handle)//以打印机句柄创建图元文件画布textout(trunc(sx* dpm),trunc(sy*dpm)',我的打印');//进行打印输出image1.Canvas.StretchDraw(image1.canvas.cliprect,MyMetafile);//显示图元文件 顶,我也想问在vb里窗体和打印机的度量单位可通过设置它们的属性ScaleMode的来改变。默认为缇567 个缇 等于 1厘米在VB中如:printer.ScaleMode = VbMillimeters就把坐标的单位设置为mmdelphi printer打印时默认的单位是什么,1厘米等于多少个这样默认的单位delphi 中有没有这样的设置 像素与毫米的转换转换还需要知道另一个参数:DPI(每英寸多少点)象素数 / DPI = 英寸数英寸数 * 25.4 = 毫米数 对于显示设备,不管是打印机还是屏幕,都有一种通用的方法先用GetDeviceCaps(设备句柄,LOGPIXELSX)或者GetDeviceCaps(设备句柄,LOGPIXELSY)获得设备每英寸的像素数分别记为:px 和 py一英寸等于25.4mm那么毫米换算成像素的公式为 水平方向的换算: x * px /25.4垂直方向的换算: y * py /25.4像素换算为毫米 x * 25.4 / px在程序中这么写MyControl.Height := 10{mm} * PixelsPerInch * 10 div 254;分子和分母同乘以10,将浮点数运算转化为整数运算,效率更高常用的1024x768或800x600等标准的分辨率计算出来的dpi是一个常数:96,因此计算出来的毫米与像素的关系也约等于一个常数:基本上 1毫米 约等于 3.78像素 <windows 程序设计5>里面讲的很详细, Delphi2010 怎么集成帮助文档 在ReportBuilder如何控制DBText的值? 数据转换问题,如何转换为无符号32位类型的数据 ado+Acess进行数据库操作,内存不断增加,请问如果是适时系统,怎么办? 大分相送! 列举国外知名的Delphi技术站点? 在线求问:如何知道Select语句返回结果中的行号? cds文件问题!!!!!!! 如何画曲线图表 如何才可以实现移动文件夹 我该学eelph吗? 用delphi编写的WEBbroker组件做的程序该如何发布的问题 Delphi中如何从格式化的字符串中得到数据?
打印机的度量单位可以是“磅”、“像素”、“毫米”、“厘米”、“英寸”等几种度量单位
在VB中默认的度量单位是缇,主要是用在打印机上的,大概是1缇=1/20磅
Basic.NET将度量单位从Twips转换为pixels
1.数据库支持
2.数据分组
3.分页符
4.多栏打印
5.背景图欢迎到我们的网站下载试用版。
http://www.anylib.com
用GetDeviceCaps (Printer.Handle,LOGPIXELSX)获取当前打印机的水平分辨率。
如果想让打印程序在任何打印机上都能正常地打印,你就必须改变你的度量单位。
dpm:=trunc(dpi/25.4);
//算出每毫米的打印机点数。
MyMetafile:= TMetafile.Create;
//创建图元文件
TMetafileCanvas.Create(MyMetafile,printer.Handle)
//以打印机句柄创建图元文件画布
textout(trunc(sx* dpm),trunc(sy*dpm)',我的打印');//进行打印输出
image1.Canvas.StretchDraw(image1.canvas.cliprect,MyMetafile);
//显示图元文件
在vb里窗体和打印机的度量单位可通过设置它们的属性ScaleMode的来改变。默认为缇
567 个缇 等于 1厘米
在VB中如:
printer.ScaleMode = VbMillimeters
就把坐标的单位设置为mmdelphi printer打印时默认的单位是什么,1厘米等于多少个这样默认的单位
delphi 中有没有这样的设置
转换还需要知道另一个参数:DPI(每英寸多少点)
象素数 / DPI = 英寸数
英寸数 * 25.4 = 毫米数 对于显示设备,不管是打印机还是屏幕,都有一种通用的方法
先用GetDeviceCaps(设备句柄,LOGPIXELSX)
或者
GetDeviceCaps(设备句柄,LOGPIXELSY)获得设备每英寸的像素数
分别记为:px 和 py
一英寸等于25.4mm
那么毫米换算成像素的公式为
水平方向的换算: x * px /25.4
垂直方向的换算: y * py /25.4
像素换算为毫米 x * 25.4 / px
在程序中这么写
MyControl.Height := 10{mm} * PixelsPerInch * 10 div 254;
分子和分母同乘以10,将浮点数运算转化为整数运算,效率更高常用的1024x768或800x600等标准的分辨率计算出来的dpi是一个常数:96,因此计算出来的毫米与像素的关系也约等于一个常数:
基本上 1毫米 约等于 3.78像素