Delphi利用Windows GDI实现文字倾斜

news/2024/7/6 1:58:12
Delphi利用Windows GDI实现文字倾斜
摘要
Delphi利用Windows GDI实现文字倾斜

procedure TForm1.FormPaint(Sender: TObject);
var
  FLogFont: tagLogFontW;
  hTempFont, hPrevFont: HFONT; //字体句柄
  hTempDC: HDC; //设备描述表或图形设备句柄
  TempString: string; //输出的文字
begin
  FLogFont.lfHeight := 10; //字高
  FLogFont.lfWidth := 10; //字宽
  FLogFont.lfWeight := 1;  //字体笔划粗细程度
  FLogFont.lfUnderline := 0; //没有下划线
  FLogFont.lfStrikeOut := 0; //没有删除线
  FLogFont.lfItalic := 0; //斜体效果否
  FLogFont.lfCharSet := GB2312_CHARSET; //字符集
  FLogfont.lfEscapement := 450; //倾斜度
  // FLogFont.lfOrientation := 450;  //方向与倾斜度取值同
  FLogFont.lfFaceName := '宋体';//字体名称
  //创建逻辑字体
  hTempFont := CreateFontIndirect(FLogFont);
  TempString := '测试';

  hTempDC := GetDC(Handle); //取出窗口设备的当前字体,并替换为新字体
  hPrevFont := SelectObject(hTempDC, hTempFont);//设置设备窗口的文字色彩
  SetTextColor(hTempDc, clRed);
  TextOut(hTempDc, 200 , 200, PChar(TempString), Length(TempString));
  SelectObject(hTempDc, hPrevFont);
  DeleteObject(hTempFont);
  ReleaseDC(Handle, hTempDC);
end;

转载于:https://www.cnblogs.com/blogpro/p/11426661.html


http://www.niftyadmin.cn/n/3301282.html

相关文章

CodeForces 631 A.Interview(水~)

Description f(x,l,r)表示将x序列的第l个元素到第r个元素按位或后的结果&#xff0c;给出两个长度为n的序列&#xff0c;问f(a,l,r)f(b,l,r)的最大值&#xff0c;1<l<r<n Input 第一行一整数n表示序列长度&#xff0c;之后输入两个长度为n的序列a和b(0<ai,bi<…

Python学习笔记(一)——输入与输出

输出&#xff1a;——print() Python中的输出使用print()完成 >>> 在屏幕中输出Hello World >>> print(Hello World) Hello World使用print()函数输出多个字符串时要使用逗号隔开 >>> print(hello,everyone,this,is,GUN) hello everyone this is GU…

ElasticSearch中设置排序Java

有用的链接:http://stackoverflow.com/questions/12215380/sorting-on-several-fields-in-elasticsearch 有的时候,需要自己设定排序,java的一个接口如下: String time1 ConstValue.GetCurrentDate();SortBuilder sortBuilder SortBuilders.fieldSort("tfp_save_time&qu…

C++如何判断某一文件是否存在

函数名: access功 能: 确定文件的访问权限用 法: int access(const char *filename, int amode);程序例:#include <stdio.h>#include <io.h>int file_exists(char *filename);int main(void){printf("Does NOTEXIST.FIL exist: %s\n",file_exists("…

CodeForces 631 B.Print Check(水~)

Description 给出一个n*m的网格图&#xff0c;起初所有格子颜色都是0&#xff0c;之后k次操作&#xff0c;每次把某一行或某一列涂成某种颜色&#xff0c;要求输出操作完后所有格子的颜色 Input 第一行三个整数n,m,k分别表示网格图的规模和操作数&#xff0c;之后k行每行三个…

VC++ MFC文件的移动复制删除更名遍历操作

1&#xff0e;判断文件是否存在利用CFile类和CFileStatus类判断CFileStatus filestatus;if (CFile::GetStatus(_T("d://softist.txt"), filestatus))AfxMessageBox(_T("文件存在"));elseAfxMessageBox(_T("文件不存在"));利用CFileFind类判断CFi…

为ElasticSearch添加HTTP基本认证

ES的HTTP连接没有提供任何的权限控制措施&#xff0c;一旦部署在公共网络就容易有数据泄露的风险&#xff0c;尤其是加上类似elasticsearch-head这样友好的前端界面&#xff0c;简直让你的数据瞬间裸奔在黑客的眼皮底下。项目上线前做十万伏特的防护当然不现实&#xff0c;但至…

CodeForces 631 C.Report(单调栈)

Description 给出一个长度为n的序列a&#xff0c;两种操作&#xff1a; 1 x&#xff1a;把前x个数升序排 2 x&#xff1a;把前x个数降序排 问m次操作后的序列 Input 第一行两个整数n和m分别表示序列长度和操作数&#xff0c;之后n个整数ai表示该序列&#xff0c;最后m行每…