浅谈TTF字体和Fnt字体的本质和优缺点

news/2024/11/29 3:43:21/
前言
本篇在讲什么

浅浅对TTF字体和Fnt字体的本质了解一下
本篇的特色

具有全流程的图文教学
重实践,轻理论,快速上手
提供全流程的源码内容


★提高阅读体验★

👉 ♠ 一级标题 👈

👉 ♥ 二级标题 👈

👉 ♣ 三级标题 👈

👉 ♦ 四级标题 👈


目录

  • ♠ 存储信息和显示原理
  • ♠ TTF字体
  • ♠ Fnt字体
  • ♠ 总结
  • ♠ 推送
  • ♠ 结语


♠ 存储信息和显示原理

我们应该去正确的认识二者的本质,当了解本质之后自然就会有一个更加清晰的认识了


♠ TTF字体

TTF被称为字库,其全称是TrueTypeFont,是Apple公司和Microsoft公司共同推出的字体文件格式,其文件是以.ttf结尾的文件,如下图所示

在这里插入图片描述

制作TTF字体首先要准备好每个字模,描述文件内存储的是每个字模的信息,准确的说存储的记录字模信息的轮廓线

下面有几篇文章对TTF内部的存储结构介绍的很详细,可以拜读一下

TrueType字体结构

ttf TTF字库文件格式详解


♠ Fnt字体

在游戏开发中往往会用到大量的艺术字,这个时候一般会考虑使用Fnt字体,一般也被称为位图字体,Fnt字体都是以两个文件同时出现的,一个是文字图片的图集,一个是描述文件,如下图所示

在这里插入图片描述

我们可以先简单看一下.fnt文件的内部信息,如下图所示

在这里插入图片描述

其内部信息,主要记录了字体信息、图集信息、对应字体再图集中的位置大小偏移量等等,这里不在对其具体功能做累述,后边想做个Fnt的生成工具,到时候再讲吧


♠ 总结

基本了解了二者的本质,就很明显能看出二者的区别,虽然都是显示字体,TTF记录的是字模信息,根据字模信息去渲染出对应的字体,Fnt则完全就是显示图片,从图集中去裁剪对应位置的图片

那二者有什么优缺点呢?

TTF字体是支持矢量字库的,所以即使再大的字号,依然显示的很清晰,不会出现锯齿,但是对色彩表达很弱,多数系统字都会考虑使用TTF

Fnt字体更灵活,对色彩和字体效果表示的更加得心应手,并且在特定情况下,大量的字体是可以合批处理


♠ 推送

  • Github
https://github.com/KingSun5

♠ 结语

若是觉得博主的文章写的不错,不妨关注一下博主,点赞一下博文,另博主能力有限,若文中有出现什么错误的地方,欢迎各位评论指摘。

👉 本文属于原创文章,转载请评论留言,并在转载文章头部著名作者出处👈

http://www.ppmy.cn/news/164153.html

相关文章

基于java的班级管理系统的设计与实现

一:需求分析 1.功能需求 1).能够实现对班级学生基本资料的录入,包括学生的学号,姓名,性别,所学专业,家庭住址以及出生年月等。 2).能够实现对学生基本资料的修改。 3).根据学号对学生资料进行查询。 4).能够删除某些学生的资料。 二:总体设计 本班级管理系统共有6…

QLoRa:在消费级GPU上微调大型语言模型

大多数大型语言模型(LLM)都无法在消费者硬件上进行微调。例如,650亿个参数模型需要超过780 Gb的GPU内存。这相当于10个A100 80gb的gpu。就算我们使用云服务器,花费的开销也不是所有人都能够承担的。 而QLoRa (Dettmers et al., 2023)&#x…

Java程序设计入门教程--随机类Random

随机数的类 在程序设计中,经常都需要产生一些随机数,比如模拟随机抽奖、抽样等。 Random类在java.util包中,是专门用于提供生成一个随机数的类,随机数的生成相关方法都在该内中。比如Random类的nextInt方法需要一int型值作为参数&…

Gradle入门篇之自定义Task类

一、前言 在编写Gradle脚本中,经常会使用到 Task,自定义Task的实现方法也有很多,最简单的就是在Gradle脚本中直接使用闭包的方式添加功能代码,这种类型的Task在实现一次性执行的操作非常方便,若这种方法无法满足要求时…

字节跳动春招——特征提取

小明是一名算法工程师&#xff0c;同时也是一名铲屎官。某天&#xff0c;他突发奇想&#xff0c;想从猫咪的视频里挖掘一些猫咪的运动信息。为了提取运动信息&#xff0c;他需要从视频的每一帧提取“猫咪特征”。一个猫咪特征是一个两维的vector<x, y>。如果x_1x_2 and y…

华为擎云计算机,终于来了!华为台式机擎云W510现身官网:国产CPU加持

今天下午&#xff0c;有微博博主爆料称&#xff0c;此前传闻已久的华为台式机正式现身华为开发者官网。据悉&#xff0c;这台主机将被命名为擎云W510&#xff0c;由富士康代工&#xff0c;主要面向政企客户&#xff0c;预计将于今年年内上市。 华为这款台式主机的设计比较简洁&…

n5100和n5105哪个好

n5100采用10纳米制造工艺 四核心 “CPU主频1.1-2.8 GHz 三级缓存4MB 热设计功耗6W 选n5105 还是n5100这些点很重要http://www.adiannao.cn/dy n5105采用10纳米制造工艺 四核心4线程 “CPU主频2-2.9GHz 三级缓存4MB 热设计功耗10W内存类型 DDR4 2933MHz&#xff0c;LPDDR4x 293…

华为擎云计算机,华为擎云台式机曝光:CPU+GPU全自研

原标题&#xff1a;华为擎云台式机曝光&#xff1a;CPUGPU全自研 目前国产电脑的呼声越来越高&#xff0c;此前已经有国产的天玥系列电脑问世&#xff0c;不过详细数据并没有爆料。而龙芯的产品目前也没有见到动静&#xff0c;这个时候外界对于华为台式机的关注度就无比高涨。 …