-
?正点原子】i.mx6u嵌入式Linux驱动开发指南v1.4的字库分类
资源介绍
1.3 使用BMP添加水印
在yuv视频数据中叠加BMP水印信息,实现方法:假设采用的BMP位图为8位
(256色)的位图,只需要将BMP图片中的位图数据添加到原始视频数据中即可,
故,首先用UE打开BMP图片,将位图文件头、位图信息头、调色板信息去掉,只
保留位图数据部分。
假设BMP图片的分辨率为96*48,则保留下来的位图数据大小为:
96*68-14-40-256*4=6528-1078=5450(字节)
注:在使用水印数据替换视频数据时,需要注意视频数据的格式(YUYV、
YUV420、UYVY等),由于我使用的水印为黑底白字,有文字的地方为白色,否则
为原始色彩,因此BMP图片中只有0x00和0xFF。在添加水印时需要忽略掉背景的
黑色,产生透明背景的效果。采用的方法是:当BMP图片中数据为0xFF时,才将
这个数据替换掉原始视频中的数据,并且只替换掉Y分量即可,若替换掉了U、V
分量,则叠加的水印将会失真。(视频中的Y、U、V分量各自占用一个字节)
2. 字体添加水印
2.1 字库分类
字库主要分两类:点阵字库、矢量字库。
● 点阵字库:就是把每个字符都分为16x16或者24x24个点,然后用每个点
的虚实来表示字符的轮廓,常用来作为显示字库使用,这类点阵字库 大的缺点
是不能放大,一旦放大后就会发现文字边缘的锯齿。