cvputtext opencv中汉字的输出_第1页
cvputtext opencv中汉字的输出_第2页
cvputtext opencv中汉字的输出_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

cvPutText opencv 中汉字的输出 OPENCV 不支持汉字输出,但可以修改其代码,支持汉字。字符输出 在 nitFont、cvPutText、cvGetSize 三个函数中,文件在 cxcoresrccxdrawing.cpp 函数介绍: void cvlnitFont(CvFont*font,int font_face,double hscale,double vscale,double shear,int thickness,int line_type); /*font 表示被初始化的字体结构体。font_face 字体名称标识符,目 前仅支持 CV_FONT_HERSHEY_SIMPLEX 等少数几种字体。hscale 表示 字体宽度的放大系数,例如 05f 表示宽度为原来的一半,shear 字 体豹裁瘦的斜率,1 表示字体倾斜 45 度。thickness 表示字体笔划的 粗细程度。line_type 表示字体笔划的类型,具体参见 cvLine。*/ void cvPutText(CvArr *img,char+text,CvPoint org,CvFont *font,CvScalar color); /*img 表示图像。这里要严格的 ASCII 字符,不能接受像 GB2312 等 双字节编码。org 表示第 1 个字符左下角的坐标。font 表示字体结构 体。color 表示文本的字体颜色。 */ 字符编码:ASCII( 一个字节),GB2313(两个字节),Unicode(两个字 节).unicode 兼容 ASCII,不兼容 GB,需要 ANSI-C 语言来转换. 思想如下: 1,解析汉字的编码;2,根据汉字编码装载汉字的形状; 3,输出汉字的 形状。 1,从 char wchar_t 2,采用 TrueType 字库。利用开源的 FreeType 库来处理字库。具体如 下: 用 FreeType 的 API 提取一个字符的过程如下: FT_Library m_library; 字库 FT_Face m face;字体 /打开字库文件,创建一个字体 FT_Init_FreeType(&m_library); FT_New_Face(m_library,“TrueType.ttf,0 ,&m_face); 根据字符的编码得到字符的索引位置 根据字符在字库中索引得到字库轮廓 /根据字符的轮廓渲染字符的二值位图 FT_UInt glyph_index=FT_Get_Char_Index(m_face,中); FT_Load_Glyph(m_face,glyph_index,FT_LOAD_DEFAULT); FT_RenderGlyph(m_face-glyph,FT_RENDER_MODE_MONO); /释放 FreeType 库管理的资源 FT_Done_Face(m_face); FT_Done_FreeType(m_library); 3, 显示 字型对应的是字型的位图(m_face-glyph-bitmap) ,直接把字符 对应的位图像素绘制到影像中即可。 影像中每个像素的颜色可以通过 OpenCV 中的 cvSet2D 函数设置。 实现代码如下: void drawCharaeter(Ipllmage *image,FT_Face *face) /处理 Ipllmage 影像的 origin 标志和 ROI 结构 yphSIot slot=m_face-gly FT_GlyphSiot slot = m_face-glyph; int rows=slot-bitmaprows ; int cols=slot-bitmapwidth; for(int i=0;ibitmappi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论