说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

如何在WINDOWS中控制打印字体的长宽,而不受限于SIZE 的限制-Delphi资料

HTML文档下载 WORD文档下载 PDF文档下载
如何在WINDOWS中控制打印字体的长宽,而不受限于SIZE 的限制-Delphi资料

首先为了达到这个功能,可以采用Windows的逻辑字体(LogFont)

可以使用 CreateFont 或 CreateFontIndirect 这两个Windows API

函数来定义任何想要的字体,由于 CreateFont 所需的参数甚多通常

我们使用 CreateFontIndirect 来建立所需的逻辑字体,这个API函数

在Delphi中的声明为

function CreateFontIndirect(const p1: TLogFont): HFONT; stdcall;

其中只有一个参数 p1: TLogfont

所有有关字体的参数完全通过这个

TLogfont结构来传送,Windows将根据结构中的内容创建出相应的逻辑

字体,在Delphi的Windows.pas中TLogFont是这样定义的

TLogFontA = packed record

lfHeight: Longint;

lfWidth: Longint;

lfEscapement: Longint;

lfOrientation: Longint;

lfWeight: Longint;

lfItalic: Byte;

lfUnderline: Byte;

lfStrikeOut: Byte;

lfCharSet: Byte;

lfOutPrecision: Byte;

lfClipPrecision: Byte;

lfQuality: Byte;

lfPitchAndFamily: Byte;

lfFaceName: array[0..LF_FACESIZE - 1] of AnsiChar;

end;

TLogFontW = packed record

lfHeight: Longint;

lfWidth: Longint;

lfEscapement: Longint;

lfOrientation: Longint;

lfWeight: Longint;

lfItalic: Byte;

lfUnderline: Byte;

lfStrikeOut: Byte;

lfCharSet: Byte;

lfOutPrecision: Byte;

lfClipPrecision: Byte;

lfQuality: Byte;

lfPitchAndFamily: Byte;

lfFaceName: array[0..LF_FACESIZE - 1] of WideChar;

end;

TLogFont = TLogFontA;

其中涉及到很多参数,其中

lfHeight: Longint;

指定以逻辑单位标定的字体高度,取值可为正负或零,对于需要随意

定义字体高度的情况下通常取负值,以保证获得实际尺寸的字体。

lfWidth: Longint;

用于指定字体的平均宽度,由于Windows系统下的大多数字体都是比例

字体因而采用平均宽度这个表示方法。若指定为0,则系统会自动根据

适当的比例自动处理宽度。

lfEscapement: Longint;

指定输出方向与当前坐标系X轴之间的以十分之一度为单位的角度。

lfOrientation: Longint;

指定每个字符与当前坐标系X轴之间的以十分之一度为单位的角度。在

Windows95中这个值等同于lfEscpement。

lfWeight: Longint;

指定范围为从0至1000的字体加重程度,400是标准字体700为加重字体,

0表示采用默认值。

lfItalic: Byte;

不为0表示采用斜体字。

lfUnderline: Byte;

不为0表示带下划线。

lfStrikeOut: Byte;

不为0表示带穿透线。

lfCharSet: Byte;

指定字体集。

lfOutPrecision: Byte;

指定输出精度。用于确定对前面一些设定值的精确程度。

lfClipPrecision: Byte;

指定裁剪精度。裁剪是Windows图形环境下的一种特殊处理,简单说就是

去掉图形中落在视图以外的部分,有助于提高图形的处理速度。

lfQuality: Byte;

指定输出质量。

lfPitchAndFamily: Byte;

指定字体的Pitch和Family。

lfFaceName: array[0..LF_FACESIZE - 1] of AnsiChar;

指定采用的字体名称。

在建立逻辑字体时,我们通常使用

lfHeight和lfWidth来确定字体的尺寸,使用lfEscapement和lfOrientation

来确定字体的输出方向,使用lfWeight

lfItalic

lfUnderline

lfStrikeOut

来确定字体的加重,斜体,下划线和穿透线,使用lfCharSet

来确定字体的字符集,通常采用系统默认的字符集。

对于lfOutPrecision

lfClipPrecision

lfQuality一般应用于对屏幕之外

的输出设备,通常采用默认值。采用lfPitchAndFamily来确定采用定宽或可

变字体和字体的家族。以lfFaceName来通过名称选择采用的字体。

另外应当注意在Windows环境下,每种字体具体输出为何种形式取决于很多

因素,需要对以上这些参数进行有效的组合才能达到所要的效果。

OpenStack、OpenNebula、Eucalyptus、CloudStack社区活跃度比较 XOR的黄色大象:Erasure Code为Hadoop节省数据恢复带宽 竞争将越来越激烈:戴尔或也进军可穿戴计算市场 新技术:可直接在人脑播放广告 编程调试和诊断的五大规则 70%开发者:对现有应用推广和广告并不满意 四种方案:将OpenStack私有云部署到Hadoop MapReduce环境中 扩展PHP的五个简单技巧,让单服务器并行支撑30000用户 硅谷为什么无法复制 PubNub+Cloudinary:简单几步快速搭建实时图片分享应用 影响互联网行业的十大API(信息图) Hadoop+GPU强强联手的性能探索 Eurora获最节能超算殊荣,中国天河2号位列第31 程序员的野心:让GPU像CPU一样运行 Gungho热潮正在逐渐消退? Thalmic创始人专访:穿戴式体感设备MYO背后的开发故事 移动周报:GSMA各种神器,Qt 5.1,Android 4.3,本周惊喜多多! 奇虎360Web平台部基础架构团队访谈:开源线上数据库中间件Atlas 化繁为简:UC优视发布“UC+”开放平台战略 从40亿美元到10亿美元 Hulu的美梦是否又一次成为泡影? 百度开发者俱乐部第六期:BAE3.0开放内测 云编程马拉松启动 微软宣布将于今年9月30日正式关闭MSN TV服务 程序员不应该再犯的五大编程错误 中国开源事业,路在何方? StackOverflow上的编程趋势 Oracle悄然将Berkeley DB许可证更改为AGPL 简单易用,保护隐私:麻省理工的邮件数据挖掘分析工具Immersion Microsoft Ventures进入中国,为云生态系统构建提供加速度! 这是场战争:盘点那些参与智能手表竞争的厂商 三星豪掷80万美元奖金 第二届全球开发者挑战赛开幕 MongoDB Map Reduce速度提升20倍的优化宝典 关于CSS!! 高程涨价了~~~~~~今天报名的我,身上只有111块~~~`结果只有1块了,坐车回家,身无分文,5555555 JBuilder7.0在Linux下的中文支持? 高分求救(急),在线等,请高手帮忙 一次最多只能给100分。 Apache2.0.46与tomcat-4.1.24整合问题 各位来看一下我写的这点东西,能不能找到个工作呀 比较一下:C++primer The C++ programming language 和 thinking in C++。不要只说那本好,只看过一本也近来说说看法!! 高手来帮助我阿 浏览器隐藏问题! 那位给我一个用 C# 操控注册表的详细例子或说明…… 已经辞掉了版主职务了,一个星期没有上网,这回散点分给大家. 有没有变量可以存储任何类型的图片对象? Exchange 2000 Lotus connector 大侠帮帮我! XP内存消耗问题 为什么SQL存储过程在SQL QUERY ANALYZY可以顺利执行完一个从1到1500的循环,而在PB7.0中调用时却... 如何设置按钮控制程序运行,具体看贴 网页图片显示问题(急,帮帮忙哦,在线等!) 请问一个关于visual studio.net的问题 在线求解,很急,谢谢 程序是SQL Server2000+Delphi6的三层结构,打包问题,大侠请帮忙!(200) ¥¥火星人都不会的问题!巨难!欢迎各位! 这里有没有兄弟写过“万邦“图形采集(winbond)的应用程序没有 关于输入法 为什么ASP页面关闭后,session中的值还存在呢? 到底有没有官方出的VS6.0中文版?? 请问怎样给一个buffer中所有数据清0 test 数据采集问题,高手指教!!!急 为何我修改了打印纸尺寸但不起作用? 请问大家现在MCSE的题目变了没有啊? 共同学习 高人指点一下 DataGrid如何实现如下功能? 如何在图片框中按鼠标时知道当前鼠标在图片框中的坐标?谢谢! 【骂人】destroy(只想灌的爽)进来 散分~~~~前5名!谢~ 请教两个问题,专家请进! 请问在什么地方可以找的计算机方面的中英文对照翻译? Dll向主窗口发送自定义消息? 如何用MoveWindow()和SetWindowPos()来改变窗口大小(最好有个例子)! script参数怎样传输到applet中 怎样把jpg转换位BMP,在线急等 我要开放mssql的访问,在防火墙中是不是只要开放1433端口就可以了? 外面买的2000安装盘有的里面只有一个程序,叫什么ghost,好象运行它后就可以非常快的安装2000,请问这个ghost是用哪个软件做的? 系统初始化把所有数据库里面的内容删除,保留表的结构,这是怎么实现的? 如何将AnsiString转换成LPCWSTR? 我想请问一下,当panel显示时如果下面有<select >控件是,这个控件不被盖住,结果好象panel破了下一样,请问题怎么办!谢谢 如何把这个程序转换成java程序,我够菜的:( 高分请教如何实现本地网址过滤?就好像反黄软件,或公安的监控软件一样。 求f(x)的最大值g(a)什么意思 西游记 取到经书后他们各得到什么称号? 二次函数y=2x^2的图像的对称轴是? f(x), 光子是假想的吗?是否存在都说光子是没有质量的,一想确实合理,毕竟w=Fs,钥匙光子有质量,那随便开个灯动能都是很大的,但是既然这样又为什么要引入这个概念呢 函数y=cos(2x+π/3)图像的对称轴可能是?A.x=-π/6 B.x=-π/12 C.x=π/6 D.x=π/12 左边一个虫右边一个宾的是什么字? 光子是怎样存在的?是一种介子吗? 不同组织中的氢原子在1.5T的磁共振机中进动频率是否相同?人体不同组织中的氢原子在1.5T磁共振机器中静止场强下进动频率是否相同?我的意思是说:我们磁共振检查时是研究氢原子,那么 磁感线垂直线圈,磁通量最大时,感应强度为什么等于0磁通量为0时,感应强度为何又最大了 lucy and lily have opposite views and i___ .lucy likes staying in and reading ,but lily likes going out and meeting people. 请问司马迁跟司马光是什么关系 什么是套头和标头 等比数列数列中s3=16 s6=14 求s4为什么s3 比s6 等比数列,我算下来q大于0啊谁再给推下 USB数据线上的小圆柱体的工作原理? D50的标头和套头是同一个吗?为什么有的说是18-55的有的说是50/1.8的?购买的时候价格有区别吗?哪一个更好呢?我拍人像和风景为主 电机的功率2200w-S3 USB连接线上的圆柱体是用来干吗的?貌似很有用的样子 18-55套头和50标头可以配遮光罩吗? 光子到底是不是实体?高中物理书上提到了康普顿效应.“光子有动量,和实物粒子一样”这是书上的原话.它暗示了光子有质量吗?(p = m*v)但是《时间简史》上说"as an object approaches the speed of li 怎么有些键盘连接线上有一圆柱体的东西? 带宾的字旁有哪些 几题高一数学竞赛的平面几何题1 在RT△ABC的斜边BC上取一点D,使△ABD和△ACD的内切圆相等,证明:S △ABC=AD^2.2 设l使经过△ABC的顶点C且与AB平行的一条直线.∠A的平分线与BC边交于D,与l交于E,∠B 数据线上的那个圆柱体的是什么 一个正n边形,求共有几条对称轴?急答的好,我加20悬赏分!务必认真! 一道平面几何题高一四棱锥P-ABCD,四边形ABCD是角DAB为60°的菱形,侧面PAD为正三角形,其所在平面垂直底面ABCD,G是AD边中点1.求证BG垂直面PAD2.求证AD垂直PB3.若E为BC边中点,F为PC边中点.求证平面DEF垂 有没有人叫我一下怎么乳交啊?我胸部比较小 正N边形有多少条对称轴 光子真是存在吗 已知圆X²+y²=8内有一点M(-1,2),AB为经过点M且倾斜角为α的弦(1)当α=3/4π 时,求弦AB的长(2)当弦AB被点M平分时,求直线AB的方程 一个正n边形有几条对称轴? 高一平面几何问题两个命题其中有一个是错的错的请举出反例1 若平面内不存在与直线a垂直的直线,那么a平行于平面2 若一条直线与两个平面的交线平行,则这条直线至少和这两个平面中的一 mathematica如何在一个随机的球体上随机生成三个点? 安然长逝的意思 一道高一平面几何题如图,AB是圆O的直径,C是圆周上不同于A,B的任意一点,PA⊥平面ABC,则四面体P-ABC的四个面中,直角三角形的个数有( )A、4个 B、3个 C、2个 D、1个 鸡胚蛋能吃吗? 核弹暴-炸时的蘑菇云是怎样形成的拜托各位大神是所有物体暴-炸(只要能量足够)都能形成的吗?原-子弹和氢-弹暴炸的蘑菇云有什么不同?为什么会产生不同? 辨析:中国革命道路理论对马克思中国化具有方法论意义. 求y=cos2x的对称轴与对称中心、、 什么是"爱"给我举例子说明? 辨析:只要有革命批判精神和创新意识,就一定能推动社会的进步和发展. -cos2x=y 如何求对称轴 ★“小鹿乱撞”是何意?是用来形容什么的?举几个例子说明!★♥ ♥ ♥ ♥ ♥ 电源适配器尾部 有一个大粗圆柱体是干什么用的 cos2x如何求对称轴?y=cos2x 致女儿的信故事为什么把男女爱情放在五十多年表现说明什么 圆柱体的粗是什么 求“浅谈沃尔玛对中国零售业的启示”的论文提纲 玻利维亚天空之境怎么样 月字旁加个宾是什么字? 如果两个小圆柱体可以拼成一个大圆柱体,那么这两个小圆柱体的底面积一定相等,高也一定相等这句话对吗? 哪位旅游达人去过玻利维亚的乌尤尼湖,就是天空之境请讲一讲行程等各方面,如签证、机票(价格和到哪里转机?是巴西还是阿根廷)、线路是先到拉巴斯还是什么、住宿、最佳季节(要去的 日字旁一个宾有这个字么 某物质的化学式为HnMO2n,其式量是A,则M的相对原子质量是(),M的化合价(),当M的化合价不变时,其氧化其氧化物的化学式为什么 G+G/G+F/G+F+F/都是什么意思 宾字加个王字旁怎么打那个宾字五笔怎么打? 一道物理竞赛题答对追加分匀质杆AB直立于光滑水平面上,稍受扰动杆将倾倒,A断在水平面滑动,求B点的轨迹,设杆长为2l.如图 f(x)≡g(x)含义两函数中间符号表示什么意思,若该符号上与不等号相同, 西游记中经书落水后在哪里将经书晒干 第五题3,最好陪图和对称轴 韩国高官吁国际社会为实现半岛无核化加美国能源部长:美中应加强清洁能源合作南非副总统希望更多中国企业参与非洲交中国商务部敦促欧盟执行WTO中欧紧固中国外长敦促日方严肃对待阻碍中日关系浙江省第六届金锤奖结果揭晓 300多国际晚班车:驻韩美军邮局成\"毒品仓中国外交官在朝鲜参加支农活动埃及穆兄会又一高级领导人被捕杨澜提问郎朗被指语意不善 晒合影澄清伊拉克两起自杀式袭击致21人死亡日本称福岛核事故泄漏的放射性铯污染周韩国议员结束对开城园区考察回国 未与北京警方破获“10.28”暴力恐怖袭韩国议员赴开城考察 吁韩朝积极推动工李开复病后首露面:趁容颜美好时让大家韩国议员结束对开城园区考察回国 未与商务部敦促欧盟执行WTO中欧紧固件反玻利维亚计划大力发展核能等替代能源中国前三季度国际收支经常项目顺差13巨丰投顾:多板块出现井喷 市场方向渐日两名女高官不和影响奥运筹备?北京“十三五”将至少上市10家公司业内专家:裁判未针对中国选手 不存在阿里一季度财报收入同比增长59%田涛亮相男举最后冲金点新书架您觉得中国运动员是被“黑”了吗?我们的影视音乐为什么不行冯宪珍:反串老头做“配菜” 挺乐呵罗贯中的心狠过乔治·马丁?申领居住证后可参与积分落户争议判罚不断 还能淡定点赞整治“奇葩证明”,追责是关键广东人民社办“始祖鸟”《就要一场绚丽突围》41名省部级、千余名厅局级干部被处分争议判罚不断 还能淡定点赞牛街负伤民警重返岗位逻辑紊乱症派出所将不再开具20类证明新意思音乐公司成立 首推女性唱作人合
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘