FreeType的灰度图

数字图像处理 第六章彩色图像处理 阅读详情
FreeType生成的图是8bit灰度图,文字部分为白色,背景为黑色。这就有个麻烦,一般字体都是黑色,那好如果吧字体颜色取反,就黑色的变白的,白的变黑的了。可是呢,要加上颜色怎么办?这就是Freetype的文字是白色的原因,因为是8bit灰度图,因此不是黑色或白色地方,颜色就成了一个比例因子,只需要将其与想要设置的颜色相乘除以256即可,比如灰度图中某点的颜色是156,想要设置颜色是RGB(127, 42, 186),那么实际的颜色是

RGB(127*156>>8, 42*156>>8, 186*156>>8)
回到之前说的,如果想把黑色变白,白的变黑的,那么比例因子就要再取反一次,麻烦了。而且,如果字体被设置了颜色后,灰度图的比例因子效果就失效了,不能再被设置成其他颜色了,重新获取灰度图要花多余时间,解决方法是:把8bit灰度图保存在alpha通道中,如果想设置颜色,就从alpha通道中获取灰度值即可。
OpenGL ES 文字渲染进阶--渲染中文字体 每个 2D 方块需要 6 个顶点,每个顶点又是由一个 4 维向量(一个纹理坐标和一个顶点坐标)组成,因此我们将VBO 的内存分配为 6*4 个 float 的大小。片段着色器有两个 uniform 变量:一个是单颜色通道的字形位图纹理,另一个是文字的颜色,我们可以同调整它来改变最终输出的字体颜色。使用 FreeType 渲染中文和英文字符在流程上基本一致,都是根据字符的编码值来加载位图,然后上传纹理。,它小巧、高效、高度可定制,主要用于加载字体并将其渲染到位图,支持多种字体的相关操作。 阅读详情

相关推荐

K210开发板学习笔记(三)——STM32+K210+SD卡实现人脸识别(完整K210代码)

更新日记:2022年4月26日 更新了串口通信部分的内容,本文写的略为粗糙,恐有不当之处,希望大家不吝赐教。 人脸识别 一、MaixPy IDE开发 参考博主晨少hc的博文(https://blog.youkuaiyun.com/HuangChen666/article/details/113995079)来实现人脸识别功能,我用的硬件是亚博智能的K210开发板,在配置工程中有几步和这个博主的不一样,需要注意。 所需要的文件有:模型文件),脚本文件,ide需要的bin文件...

Embedded learner的博客 4万+

freetype文字颜色

已经很久没来这里记录东西了,在写了地下的lod后,dx的学习也是断断续续的,那之后给地形加上了贴图,弄了段时间的shader,之后地形就放下了,之后开始弄了水的渲染。在弄水的渲染也是碰到了很多的问题但是都太懒了都没记录下什么,等有时间一定要补上。这段时间在弄freetype。主要

bytxl的专栏 5089

OpenClaw 3.13 + Mac mini M4 集成 qmd 记忆存储:qmd embed 卡死 / 报错 sqlite-vec 不可用 终极解决教程

模型加速让 qmd 从国内镜像下载模型,避免网络超时;SQLite 扩展支持:修改 qmd 源码后,Bun 不再使用内置 SQLite,而是调用 Homebrew 安装的,该版本支持接口,可正常加载vec0.dylib向量扩展;OpenClaw 3.13 适配:核心逻辑与 OpenClaw 3.13 的 qmd 记忆调用逻辑完全兼容,无需额外调整;sqlite-vec 加载:qmd 自动通过sqlite-vec包获取vec0.dylib路径,调用完成向量扩展加载,实现高效向量搜索。

wuanxionglidui的博客 1304

FreeType矢量字体对颜色的显示(妙用)

FreeType矢量字体对颜色的显示(妙用)

fdgyfghh的博客 1709

实战篇【2】-H3C防火墙开局基础配置

本篇文章为“H3C防火墙开局基础配置”,主要涵盖配置管理地址、聚合端口、安全区域、安全策略、静态路由、ACL,WEB和SSH远程管理、Console、SNMP、NTP时钟、日志主机等内容,对比交换机配置开局,增加两处配置,安全区域和安全策略。方便调试人员远程管理、调试。

weixin_47402139的博客 1万+

YOLOv5添加注意力机制的具体步骤

本文主要介绍了 本文在此篇博客的基础上向YOLOv5-5.0版 本文主要包括以下内容一、CBAM注意力机制添加(1)修改yolov5s主干网络(2)在common.py中添加可调用的CBAM模块(3)向yolo.py文件添加CBAMC3判断语句二、SE注意力机制添加 本文以yolov5s网络为例 一、CBAM注意力机制添加 注意力机制可以添加在backbone,Neck,Head等部分,接下来本文以backbone主干网络为例 (1)修改yolov5s主干网络 1.在yolov5-5.0工程文件夹下,找到m

thy0000的博客 2万+

图文使用freetype渲染字体+字体颜色+字体大小

freetype的介绍各种博客都有,可以搜索看看。 我这边就直接写demo,本demo可以生成带颜色的bitmap; 使用freetype显示一个字符简单,网上示例也很多,但是将整屏的数据都一起传递给freetype,让其生成整屏完整的bitmap,网上几乎没有找到,再加上字体的渲染,就更少之有少,本问应用是24行40列的电视图文显示使用,也会提供本范例编译出来的freetype库文件及头文件...

weixin_40550094的博客 4591

深入解析NPN与PNP传感器驱动电路的设计逻辑与实战应用

本文深入解析NPN与PNP传感器驱动电路的设计逻辑与实战应用,详细对比两者的电流路径差异和电平变化特性。通过实际案例分享电路设计要点,包括上拉电阻选择、保护二极管配置等,并提供工业应用中的选型策略和常见故障排查指南,帮助工程师优化传感器系统集成。

weixin_42561476的博客 471

OPENCV 交叉编译及freetype中文+单通道/多通道支持

harfbuzzz 和 freetype 交叉编译比较简单 开启harfbuzzz 开启freetype 设置module 编译成功后即可对RGB/BGR写中文字符 也就是仅支持3通道的MAT。错误如下: 通过修改modules/freetype下源码支持单通道 +双通道来完成对灰度图或者YUV的中文支持 ...

u013183495的专栏 864

FFmpeg视频编码的流程详解及参考demo

本文主要讲解FFmpeg的视频编码的具体流程,API使用。最后再以一个非常简单的demo演示将一个yuv数据文件编码为H264的视频文件,也就是YUV编码为H264。

分享音视频技术 4499

RK3588开发笔记-USB3.0接口调试

RK3588平台是一款强大的处理器,但要充分发挥其性能,需要正确调试其各种接口,包括USB 3.0接口。USB 3.0接口提供了更快的数据传输速度,但也可能面临一些问题。本篇博客将介绍如何在RK3588平台上调试USB 3.0接口,以确保其稳定性和性能。RK3588芯片具有强大的USB资源,包括多个USB接口和高速数据传输能力。RK3588通常具有多个USB接口,包括USB 2.0和USB 3.0。USB 2.0用于低速和全速设备连接,而USB 3.0则用于高速设备连接。

flypig has a dream! 2560

FreeType 字体引擎入门指南:从编译到字符像素转换

本文详细介绍了FreeType字体引擎的使用方法,包括源码编译、字符转换原理及实战应用。文章首先讲解FreeType的定义和作用,说明其如何将字体文件转换为灰度图数据。随后提供源码下载和编译指南。 核心部分通过多个示例逐步讲解字符转换过程:从单个字符转换到字符串处理,解决字符对齐、间距调整、中文支持等关键问题。作者特别强调处理过程中的常见误区,如字符截断、编码转换等,并提供完整解决方案。

学习、分享、成长。 372

运营商拼命封杀的PCDN到底是个啥?

最近一段时间,很多宽带用户发现自家的网速莫名其妙变慢了,甚至收到了运营商发来的“违规使用宽带”警告短信,严重的甚至直接被断网。很多人一头雾水:我交了钱办的宽带,自己买的插件或者京东云、网心云这些硬件赚点“电费”,怎么就成了运营商眼中的“过街老鼠”?今天,我们就把这层窗户纸捅破,深度剖析这个让互联网大厂省下几十亿、让运营商恨得牙痒痒、让用户夹在中间进退两难的技术黑话——。

网络技术联盟站 917

一对一源码,OpenGL ES 文字渲染

一对一源码,OpenGL ES 文字渲染实现的相关代码 基于 Canvas 绘制生成 Bitmap 在应用层实现文字渲染主要是利用 Canvas 将文本绘制成 Bitmap ,然后生成一张小图,然后在渲染的时候进行贴图。 在实际的生产环境中,一般会将这张小图转换成灰度图,减少不必要的数据拷贝和内存占用,然后在渲染的时候可以为灰度图上色,作为字体的颜色。 // 创建一个 bitmap Bitmap bitmap = Bitmap.createBitmap(width, hight, Bitmap.Confi

云豹网络科技 459

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

FreeType编译及使用心得

最近学习irrlicht引擎,为了让他支持中文,在网上找了不少资料,其中涉及到FreeType的编译,这里转载原文以备注和帮助更多的人。 首先对博客园的竹印表示感谢,虽然他好像也是转载来的,但我是从他的文章得到了帮助,原文http://www.cnblogs.com/shtianhai/archive/2010/09/02/1816235.html FreeType是一款字体服务库,它

395

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

FreeType 的基本应用

FreeType 的基本应用 FreeType是一款字体服务库,它支持多种字体,并且提供高效,高质量的文字。 首先从这里下载FreeType http://download.savannah.gnu.org ... eetype-2.3.5.tar.gz 1, 编译FreeType 解压后进入.\include\freetype,复制config到当前文件夹,随便去个

272

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

FreeType编译及使用

FreeType是一款字体服务库,它支持多种字体,并且提供高效,高质量的文字。 freetype相关介绍见:http://blog.youkuaiyun.com/ganxingming/archive/2006/06/05/774796.aspx 1, 编译FreeType 解压后进入./include/freetype,复制config到当前文件夹,随便去个什么名,这里我用custom_confi

锄禾日当午 1119

FreeType的使用

FreeType是一款字体服务库,它支持多种字体,并且提供高效,高质量的文字。 freetype相关介绍见:http://blog.youkuaiyun.com/ganxingming/archive/2006/06/05/774796.aspx 1, 编译FreeType 解压后进入./include/freetype,复制config到当前文件夹,随便去个什么名,这里我用custom_c

garnetsarah的专栏 2146

FreeType编译及使用心得收藏

FreeType是一款字体服务库,它支持多种字体,并且提供高效,高质量的文字。 freetype相关介绍见:http://blog.youkuaiyun.com/ganxingming/archive/2006/06/05/774796.aspx 1, 编译FreeType 解压后进入./include/freetype,复制config到当前文件夹,随便去个什么名,这里我用custom_c

willis 2534

C#+OpenGL+FreeType显示3D文字(1) - 从TTF文件导出字形贴图

C#+OpenGL+FreeType显示3D文字(1) - 从TTF文件导出字形贴图 +BIT祝威+悄悄在此留下版了个权的信息说: 最近需要用OpenGL绘制文字,这是个很费时费力的事。一般的思路就是解析TTF文件从而得到字形的贴图,然后通过OpenGL绘制贴图的方式显示文字。 本篇记录了解析TTF文件并把所有字形安排到一张大贴图上的过程。 使用FreeType 想从零开始解析...

weixin_34269583的博客 273
上一篇: 使用FreeType实现矢量字体的粗体、斜体、描边、阴影效果(转载)
下一篇: C++调用FFMpeg接口
Angle502
博客等级 码龄16年 4粉丝 14原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值