常用字体介绍(freetype)

article/2025/8/30 9:29:10

字体显示原理

字体和图片一样,存储为像素,绘制的时候需要找到字体对应的像素显示

字体文件格式

  • ttf,只包含一种字体格式,矢量字体
  • ttc,ttc包含多个ttf文件,包含多种字体格式
  • otf,ttf的扩展,opentype字体

freetype,开源的可以移植的字体引擎
truetype,ttf文件,跨平台字体格式
opentype,truetype字体的延伸,增加PostScript字体支持

通过解析文件数据,生成图像数据映射表,在gdi中调用绘制
gdi支持的字体格式:点阵字体,笔画字体和TrueType字体

字体加载

  • 静态加载,ttf等文件,编译成o文件,打包进程序中
  • 动态加载,指定字体的搜索路径,启动后在系统中搜索字体

创建字体

fontcreator
在这里插入图片描述

imgui

绘制字体可以参考,imgui框架中加载绘制字体的代码


http://chatgpt.dhexx.cn/article/hAta9RNW.shtml

相关文章

FreeType 简单使用

FreeType 2 第一步 -- 简易的字形装载 介绍 这是“FreeType2 教程”的第一部分。它将教会你如何: * 初始化库 * 通过创建一个新的 face 对象来打开一个字体文件 * 以点或者象素的形式选择一个字符大小 * 装载一个字形(glyph)图像&…

freetype的安装与使用

一、在PC上的安装与使用 1) 开发环境 系统版本: ubuntu14.04 freetype版本: freetype-2.4.10 gcc版本: gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.3) 2) 步骤 1. 解压缩 tar xjf freetype-2.4.10.tar.bz2 2. 配置 …

freetype环境安装记录

(一)摘要 最近在学习韦东山老师的驱动入门课程,在freetype环境安装时碰到到了一下这个报错,于是想记录下自己的安装过程方便其他碰到问题的同学解决! (二)碰到的报错 我是用的是IMX6ULL PRO开…

freetype的简单使用

安装完毕以后我们先做个简单的实例程序看看效果 1.首先先下载字体 链接:https://pan.baidu.com/s/1FCOh9SYcVkYCkaT6wtXWtA 提取码:rohm 2.编写程序 编译测试文件example.c /*编译命令*/ -I指定库文件所在位置-L指定动态库位置gcc example.c…

(转)FreeType字体位图属性

原文链接:https://blog.csdn.net/wlk1229/article/details/92424456 从原文中摘取一部分记录如下: FreeType获取的位图是一张刚好包含文字的位图,不包含左右上下的空白信息。如果绘制文字时直接把每一张位图连接在一起,文字则会一…

freetype编译

freetype简介 FreeType库是一个完全免费(开源)的、高质量的且可移植的字体引擎,它提供统一的接口来访问多种字体格式文件,包括TrueType, OpenType, Type1, CID, CFF, Windows FON/FNT, X11 PCF等。支持单色位图、反走样位图的渲染。FreeType库是高度模块…

windows下编译OpenCV带opencv_contrib和freetype

目录 1. 下载安装cmake、opencv2. 编译freetype和harfbuzz2.1 pkg-config2.2 freetype2.3 harfbuzz2.4 修改opencv_contrib下的modules/freetype/CMakeLists.txt 3. 编译OpenCV5. 示例6. 编译好的OpenCV下载地址7. 参考文章 1. 下载安装cmake、opencv cmake下载地址&#xff1…

嵌入式应用-详解移植并使用freetype显示文字

目录 前言 1. freetype和相关概念简介 2.freetype显示文字流程和主要函数 2.1 包含头文件及API头文件:ft2build.h 2.2 初始化: FT_InitFreetype 2.3 加载(打开)字体Face: FT_New_Face 2.4 设置字体大小&#x…

freetype用法

freetype用法 文章目录 freetype用法0.实现1.变量定义2.lcd操作获取屏幕信息3.freetype初始化4.绘画 1.字形度量2.类1.FT 中的面向对象2.FT_Library 类3.FT_Face 类4 FT_Size 类5 FT_GlyphSlot 类 3.函数1.把一个字符码转换为一个字形索引FT_Get_Char_Index函数2.从 face 中装…

FreeType使用

前言 在openGL绘制字体,我们一般都使用freeType字体库,如下图所示 下载 freeType官网 编译源码 使用CMake编译源码 如果嫌麻烦,我这里有编译好的库,包括头文件、lib静态库、dll动态库 编译好的lib和dll库下载地址 例子 …

【C++】字体文件解析(FreeType)

目录 字体文件解析 一、前言 二、基本排版概念 1.字体文件 2.字符图像和字符表 3.字符和字体指标 三、字形轮廓 四、字形指标 1.基线、笔和布局 2.排版指标和边界框 3.方位与步进 4.网格拟合的效果 5.文本宽度与边界框 五、代码实现 六、使用实例 七、合并缓存优…

FreeType 用法

Freetype是一个跨平台、开源的字体渲染器,网上很多文章介绍,本人就不啰嗦了。本文重点在于实现文章标题所属的各种效果,不是Freetype的基本使用方法介绍文档,所以对于Freetype不熟悉的同学们请先学习下Freetype的基本用法&#xf…

freetype 使用解析---矢量字体

屏幕显示字体(字体点阵): 在内核中有对应的文件fontdata_8x16.c,将字体通过数组8*16来描述,0表示为空,1表示描点,通过通过各个点形成一个字体点阵显示在屏幕上,而在我们所有终端中显示的字体也可以是通过点…

freetype简介与测试

目录 一、简要 二、文字显示过程 三、freetype中的step1 四、在PC上测试freetype 4.1 分析main函数 4.2 修改main函数 4.3 在PC上测试 4.4 得到CBox 一、简要 从点阵文件中把字母或者汉字的字模取出来在LCD上显示这个方式有个缺点,这个文字的大小就固定了不…

Freetype 的安装与使用

4 交叉编译程序 4.1 程序运行的一些基础知识 编译程序时去哪找头文件? 系统目录:就是交叉编译工具链里的某个 include 目录; 也可以自己指定:编译时用 “ -I dir ” 选项指定。 链接时去哪找库文件? 系统目录&#x…

java和web哪个难_web前端和java哪个难学?哪个简单?

说到java很多都人都熟知,但是说到web前端可能是很多人并不知道,随着最近几年的发展,web前端开发人越来越吃香,无论是薪资待遇还是岗位的招聘数量比java差不了多少,最近有同学在咨询web前端和java哪个难学这个问题&…

js和java那个难_javascript与java哪个难?

javascript与java哪个难?答案是:JavaScript比Java更难。那么这是为什么?下面本篇文章就来给大家介绍一下,希望对大家有所帮助。 原因: JavaScript有太多东西需要你自己去理解,这些东西里有很多要么Java已经…

没学历学java很难找工作吗

说实话不是学Java很难找工作,是以后找工作基本都会看学历,学历这个东西说重要也重要,因为它决定了你的简历能不能呈现到面试官面前,如果你的学历不够的话很有可能在第一轮简历就被刷下去了,它根本就不会呈现在面试官面…

java最难的部分_java最难学的是那一块?

原标题:java最难学的是那一块? 对于那些打算通过学习java来找到一份工作的同学来说,可以分为三个学习阶段,初级,中级,高级。不同的学习阶段有不同的难点,下来我就简单的和大家仔细的聊聊&#x…

学习Java开发难不难?好学吗?

学习Java难不难?这是很多希望学习Java的人比较纠结的问题。实际上,Java语言是非常易学的,Java语言机遇C语言,却又高于C语言。Java语言简单易学的特性使得大多数程序员很容易学习和使用Java。 Java是个简单…