//第一种重载的声明:
TextRect(Rect: TRect;       {矩形}X, Y: Integer;     {相对于窗体的位置}const Text: string {文本}
);{如果要输出的文本超出指定的矩形将不被显示}//第一种重载的举例:
procedure TForm1.Button1Click(Sender: TObject);
constR: TRect = (Left:0; Top:0; Right:60; Bottom:60);s = '万一的 Delphi 博客';
beginCanvas.Brush.Color := clWhite;Canvas.FillRect(R);Canvas.TextRect(R, 10, 10, s);
end;//效果图:


//第二种重载的声明:
TextRect(var Rect: TRect;             {矩形范围}var Text: string;            {文本}TextFormat: TTextFormat = [] {选项; 集合类型, 默认值是个空的集合}
);{参数三是 TTextFormat 类型的集合, 它定义如下:}
TTextFormat = set of TTextFormats;{TTextFormats 是个枚举, 定义如下}
TTextFormats = (tfBottom, tfCalcRect, tfCenter, tfEditControl, tfEndEllipsis,tfPathEllipsis, tfExpandTabs, tfExternalLeading, tfLeft, tfModifyString,tfNoClip, tfNoPrefix, tfRight, tfRtlReading, tfSingleLine, tfTop,tfVerticalCenter, tfWordBreak);{所以参数三可以是下列值之一或它们的组合}
tfBottom
tfCalcRect
tfCenter
tfEditControl
tfEndEllipsis
tfPathEllipsis
tfExpandTabs
tfExternalLeading
tfLeft
tfModifyString
tfNoClip
tfNoPrefix
tfRight
tfRtlReading
tfSingleLine
tfTop
tfVerticalCenter
tfWordBreak//这个函数是 API 函数 DrawTextEx 的简化, 可以参见: DrawTextEx//第二种重载的举例1:{默认是顶对齐、左对齐; 前两个参数都是传址的, 不能用常量}
procedure TForm1.FormPaint(Sender: TObject);
varR: TRect;S: string;
beginR := ClientRect;InflateRect(R,-10,-10); {把矩形缩小一圈}S := 'Delphi';Canvas.Brush.Color := clWhite;Canvas.FillRect(R);Canvas.TextRect(R, S);
end;//效果图:


//第二种重载的举例2:{单行文本、水平居中、垂直居中}
procedure TForm1.FormPaint(Sender: TObject);
varR: TRect;S: string;
beginR := ClientRect;InflateRect(R,-10,-10); {把矩形缩小一圈}S := 'Delphi';Canvas.Brush.Color := clWhite;Canvas.FillRect(R);Canvas.TextRect(R, S , [tfSingleLine, tfCenter, tfVerticalCenter]);
end;//效果图:


Delphi 的绘图功能[9] - TextRect相关推荐

  1. Delphi 的绘图功能[10] - TFONT 类

    //先来个例子: procedure TForm1.FormPaint(Sender: TObject); constS = '万一的 Delphi 博客'; varfont: TFont; begi ...

  2. Delphi 的绘图功能[5] - 获取 Canvas 对象

    在窗体上添加 Panel1.PaintBox1 和 Button1, 代码如下: procedure TForm1.Button1Click(Sender: TObject); varcvs: TCa ...

  3. Matplotlib基础绘图功能 — 以折线图为例

    1 完善原始折线图 - 给图形添加辅助功能 为了更好地理解所有基础绘图功能,通过天气温度变化的绘图来融合所有的基础API使用 需求:画出某城市11点到12点1小时内每分钟的温度变化折线图,温度范围在1 ...

  4. java使用重绘实现拖动_原生JS使用Canvas实现拖拽式绘图功能

    一.实现的功能 1.基于oop思想构建,支持坐标点.线条(由坐标点组成,包含方向).多边形(由多个坐标点组成).圆形(包含圆心坐标点和半径)等实体 2.原生JavaScript实现,不依赖任何第三方j ...

  5. Qt 2D绘图功能简单总结

    文章目录 Qt 2D绘图功能简单总结 Qt 2D绘图功能简单总结 Qt 的绘图功能非常强大,它可以绘制一切想要的图形,从最简单的一条直线到其他任何复杂的图形,还可以用来绘制文本和图片. Qt的绘图系统 ...

  6. 绝了!Pandas绘图功能

    柱状图箱线图密度图条形图散点图折线图保存绘图总结 可视化是用来探索性数据分析最强大的工具之一.Pandas库包含基本的绘图功能,可以让你创建各种绘图.Pandas中的绘图是在matplotlib之上构 ...

  7. 熊猫tv新功能介绍_您应该知道的4种熊猫绘图功能

    熊猫tv新功能介绍 Pandas is a powerful package for data scientists. There are many reasons we use Pandas, e. ...

  8. 【Qt教程】3.4 - Qt5 QPainter绘图事件、绘图功能

    1. QPainter绘图事件 简介 Qt的绘图系统允许使用现同的API在屏幕和其他打印设备上进行绘制.整个绘图系统基于 QPainter.QPaintDevice.QPaintEngine 三个类. ...

  9. r语言liftchart_R语言强大的绘图功能--附数据和代码

    Visualization视觉化,是R语言非常强大的一个特性.R在统计学软件圈能快速崛起,画图功能做出很大贡献.今天我们就用最简单的方式,用R自带的绘图包(graphics),基于R自带的数据,向大家 ...

最新文章

  1. 微生物组数据揭示中国稻谷产毒真菌分布及仓储动态变化
  2. 为什么对象字面量没有名字?
  3. 级联分类器训练及其参数的含义
  4. 【Ray Tracing in One Weekend 超详解】 光线追踪1-7 Dielectric 半径为负,实心球体镂空技巧...
  5. [Python图像处理] 三十一.图像点运算处理两万字详细总结(灰度化处理、阈值化处理)
  6. 39页作业(还款年限—月还款额表)
  7. Github CodeSpaces 使用及定制化
  8. 使用 dojo/query
  9. 算法:人工智能的新曙光
  10. VC编译器中混有.c文件时出现fatal error C1853错误(转)
  11. UmiJS 是一个 react 开发框架
  12. C/C++中struct结构体定义变量的3种方法及初始化
  13. opengl在三维场景中绘制透明物体_WPF 3D绘图-三维建模技术井眼轨迹图实现(一)...
  14. iWebOffice一些相关
  15. 零基础系统化学习白帽黑客技术
  16. j2me游戏开发之LWJGL(Lightweight Java Game Library)
  17. iphone 4 程序开发:真机测试 (免费无99刀)
  18. Linux挂载点的概念
  19. 基于STM32F103的红外遥控的一点浅显知识的分享
  20. PowerDesigner 修改table的颜色

热门文章

  1. 高斯消元(二)——竞赛题目中异或和的高斯消元
  2. centos6.5下postgresql9.4.3安装与配置
  3. 【CAM应用】谈CAM软件在实际生产中的应用举例
  4. Exchange Server 2013多域名证书申请
  5. Telnet 1433端口
  6. LeetCode 36. 有效的数独
  7. 图床上传系统设计分析
  8. 面试必问: Spring IOC
  9. Redis面试常问4-- 如何实现异步队列 Blpop key timeout
  10. c语言函数编写格式,在c语言中如何实现函数模板?