在VB5中将英文字母及阿拉伯数字旋转任意角度

2008-02-23 06:55:27来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

在Visual Basic 5.0中要使文本转动任意角度,需涉及一系列的Windows
编程的API结构和函数。首先需要了解逻辑字体的结构,如下所示:
   typedef struct tagLOGFONT{
   LONG lfHeight;
   LONG lfWidth;
   LONG lfEscapement;
   LONG lfOrientation;
   LONG lfWeight;
   BYTE lfItalic;
   BYTE lfUnderline;
   BYTE lfStrikeOut;
   BYTE lfCharSet;
   BYTE lfOutPrecision;
   BYTE lfClipPrecision;
   BYTE lfPitchAndFamily;
   TCHAR lfFaceName[LF-FACESIZE];
   } LOGFONT;
   在这一结构中,lfEscapement的值就是字体旋转的角度。注意,其单位是十分之一度,因此取值范围为0至3600。在使用中先定义好逻辑字体,再用CreateFontIndirect函数建立逻辑字体,如果建立成功将返回这一逻辑字体的句柄,否则返回定值。在逻辑字体创建成功后,可以用TextOut函数针对某一设备(一般可以是一个图片框)输出文字信息。TextOut函数定义如下:
BOOL TextOut(HDC hdc,int nXStart,int nYStart,LPCTSTR lpString,int cbString),其中hdc为设备句柄,nXStart、nYStart为文本输出的开始点坐标,lpString为待输出文本的地址,cbString为文本串长度。由于要使用到设备句柄,因此,建议将文本输出到图片框中,因为在VB中可以直接取到图片框的设备句柄属性供调用,而Label框则没有这一属性,需要用另外的Windows API函数来取得,实现起来较为麻烦。

上一篇: 人民币小写转大写
下一篇: 用VB实现鼠标的隐藏

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:切分字符串

下一篇:如何设置对VB数据库连接的动态路径