字体设置

  • 字体属性
  • 填充
  • 一点小问题
  • 补记

QQ 282397369

字体属性

看教程,初步感觉,网页字体要比VCL的字体来得简单,居然没有粗体、斜体。
只有绘制、填充,可设置字体名称、大小,以及对齐、基线与方向。
我一定是看了个假教程。
那也先按这个教程来实现一下。以后发现可以设置粗体、斜体的时候,再回过头补充实现一下。

填充

又是填充,那肯定是与画笔、画刷共用了,以后只需要把填充这个界面整得漂亮点,整体就上了档次。
至于方向属性,暂不考虑。

在之前的基础上,设计一下界面,加几行代码,搞定。

     if(UniRadioButton_FontFill->Checked) {if(fillIndex > 1)jsCode += L"ctx.fillStyle = gradient;";elsejsCode += THelper::FormatString(L"ctx.fillStyle = '#%02X%02X%02X';", GetRValue(color), GetGValue(color), GetBValue(color));} else {if(fillIndex > 1)jsCode += L"ctx.strokeStyle = gradient;";elsejsCode += THelper::FormatString(L"ctx.strokeStyle = '#%02X%02X%02X';", GetRValue(color), GetGValue(color), GetBValue(color));}if(UniComboBox_FontName->ItemIndex >= 0)jsCode += THelper::FormatString(L"ctx.font = \"%dpx %s\";", UniSpinEdit_FontSize->Value, UniComboBox_FontName->Text);jsCode += THelper::FormatString(L"ctx.textAlign = \"%s\";", UniComboBox_FontAlign->Text);jsCode += THelper::FormatString(L"ctx.textBaseline = \"%s\";", UniComboBox_FontBaseline->Text);UnicodeString text = L"Hello World!";if(!UniRadioButton_FontFill->Checked)jsCode += THelper::FormatString(L"ctx.strokeText(\"%s\", 40, 120);", text);elsejsCode += THelper::FormatString(L"ctx.fillText(\"%s\", 40, 120);", text);

单独针对轮廓与填充进行处理。


一点小问题

可以通过uniGUI获取字体名称列表,但分不清这是客户端机子的字体,还是服务端的字体。

如果是客户端的字体,那各客户端可能会有不同的字体,这在界面表现上会有问题。如果是服务端的字体就好办了,大家都一样。
待查。

真正的挑战还没开始,先用这几个基本的GDI对象练下手。我感觉要在Canvas上拖动图形对象,颇费思量。

补记

下午得闲,再多看了下别的教程,才发现自己孟浪了。字体确实是支持粗体、斜体的。
用关键词 html5 canvas font bold一搜,发现结果很多。挑个权威一点的W3 School,说得很清楚。

那就补上。
补的时候,有点汗颜。那就做得稍微专心一点,除去不常用的caption、icon、menu、message-box、status-bar,把基线、对齐效果也直观参照显示出来,即画出目标点为原点的XY轴,这样就知道各个参数调整后,与目标输出坐标点的位置关系。
实现后,发现,哦,原来如此。这下算是把font搞明白80%了。


比较有收获。

属性编辑器 - 字体设置相关推荐

  1. Texworks编辑器字体设置

    Texworks编辑器字体设置 编辑 - 首选项 - 编辑器 - Times New Roman,16磅- 单击 OK 按钮. 注意:需要关闭Texworks后重新打开才能对应用这个功能

  2. IntelliJ IDEA 13 皮肤/编辑器字体设置

    1.皮肤/字体设置 file --setting 在最左上角的搜索框里,输入"Appear"(IntelliJ IDEA很智能,马上会匹配出Appearance),参考下图: 效果图: 2.修改编辑器 ...

  3. CSS中设置字体样式的5种常用属性—让字体设置再无难点

    设置字体样式的5中常用属性如下 1:color 设置字体颜色,也可以设置其他颜色 2:font-size 设置字体大小 (1).设置的并不是文字本身的大小,在页面中,每个文字都是处在一个看不见的框中的 ...

  4. PyQt(Python+Qt)学习随笔:Qt Designer中部件的调色板palette属性和字体font属性设置

    一.调色板 在Qt Designer的部件属性中,有个部件调色板(palette)的属性,进入后,如下图所示: 1.调色板palette Qt中提供的调色板palette用于管理控件的外观显示,对应P ...

  5. IntelliJ IDEA 中设置左菜单字体, 编辑器字体和控制台的字体

    IntelliJ IDEA 中设置左菜单字体大小 File-Settings,然后选择appearance,下图右侧红色边框中的内容即设置菜单的字体和大小 IntelliJ IDEA 中设置当前编辑器 ...

  6. matplotlib的Text、FontProperties对象、字体(font)属性|中文字体的设置|图像标题、label字体的设置

    matplotlib.text.Text对象 见文档描述matplotlib.text 设置Text字体性质的方法有两个: Text.set(xxx=value) Text.set_xxx(value ...

  7. docx_demos(创建文档类Document及属性方法, 创建段落文本类Paragraph及段落格式设置, 创建字体设置类Run及属性等)

    """ docx_demos.py(创建文档类Document及属性方法, 创建段落文本类Paragraph及段落格式设置, 创建字体设置类Run及属性等)使用:一.创建 ...

  8. Markdown编辑器语法——设置字体、字号和颜色

    注意 本人的博客都迁移到本人自己搭建的博客地址,通过此处可查看. Markdown编辑器语法--设置字体.字号和颜色 Markdown是一种可以使用普通文本编辑器编写的标记语言,类似于HTML的标记语 ...

  9. html字体设置大小打印无效,css font-size属性怎么不管用?

    css font-size属性用于设置字体大小.在实际的开发中,有时会发现font-size属性不管用了,设置的字体大小是无效的.这是什么原因?怎么解决?下面本篇文章给大家介绍一下. css font ...

最新文章

  1. ubuntu 安装 lamp 环境
  2. python语言变量命名规则有什-以下选项中,符合Python语言变量命名规则的是_学小易找答案...
  3. maven打包出错: Failed to clean project: Failed to delete
  4. wx5 mysql起不来_mysql(四)—–mysql主从配置-wx5bd1240aa20ac的博客
  5. java变量不声明可以直接使用吗_我们可以在不使用Java进行初始化的情况下声明最终变量吗?...
  6. java实现计算字符串表达式
  7. 前端学习(515):两列布局第二种方案得优缺点
  8. golang 所有进程休眠_Golang-进程无故消失?
  9. ubuntu 下LAMP服务器环境搭建
  10. Android学习笔记05---项目的目录结构与安装及启动过程分析
  11. 使用阿里云集成包快速搭建LAMP+FTP教程
  12. 双击java安装包没有反应_雨林木风Win7下双击JER安装包没有反应的解决技巧
  13. sql 不允许保存更改 解决办法
  14. IDEA打包war部署到Tomcat
  15. eMTC是什么技术?
  16. Python爬虫之小猪短租房
  17. Blowfish加密算法
  18. java.sql. SQLException: No suitable driver found for jdbc :mysql://localhost:3306/test
  19. 元宇宙时代的5大风险
  20. python制作界面_详解python做UI界面的方法

热门文章

  1. 《软件工程》第一章——初始软件工程
  2. 企业信息化发展下,适合中小企业的容灾备份解决方案
  3. Beginning主题模板V3-简约的emlog主题模板
  4. java狗具有特别的接飞盘的方法_怎么训练狗玩飞盘?接飞盘的技术及要领分析...
  5. Rancher PaaS平台简介
  6. 支持HCE功能的NFC手机(Android)、 支持NFC功能的手机大全(安卓、微软、塞班、苹果)
  7. UTF-8,ISO-8859-1,GBK等字符集说明
  8. rust木炭有用吗_Rust 2020 调查报告出炉,95%的开发者吐槽Rust难学
  9. 【GIS前沿】周成虎院士:GIS的大数据时代展望(PPT分享)
  10. 智慧海洋Task02 数据分析