采用Zbar第三方库,实现二维码定位,并识别内容,解决了中文乱码


采用Zbar第三方库,实现二维码定位,并识别内容,解决了Zbar中文乱码问题. 利用梯度信息进行条形码的定位,QR-code利用矩阵点信息定位
资源截图
代码片段和文件信息
#include 
#include 
#include 
#include 

#include “CvxText.h“

//====================================================================
//====================================================================

// 打开字库

CvxText::CvxText(const char *freeType)
{
assert(freeType != NULL);

// 打开字库文件 创建一个字体

if (FT_Init_FreeType(&m_library)) throw;
if (FT_New_Face(m_library freeType 0 &m_face)) throw;

// 设置字体输出参数

restoreFont();

// 设置C语言的字符集环境

setlocale(LC_ALL ““);
}

// 释放FreeType资源

CvxText::~CvxText()
{
FT_Done_Face(m_face);
FT_Done_FreeType(m_library);
}

// 设置字体参数:
//
// font         - 字体类型 目前不支持
// size         - 字体大小/空白比例/间隔比例/旋转角度
// underline   - 下画线
// diaphaneity   - 透明度

void CvxText::getFont(int *type CvScalar *size bool *underline float *diaphaneity)
{
if (type) *type = m_fontType;
if (size) *size = m_fontSize;
if (underline) *underline = m_fontUnderline;
if (diaphaneity) *diaphaneity = m_fontDiaphaneity;
}

void CvxText::setFont(int *type CvScalar *size bool *underline float *diaphaneity)
{
// 参数合法性检查

if (type)
{
if (type >= 0) m_fontType = *type;
}
if (size)
{
m_fontSize.val[0] = fabs(size->val[0]);
m_fontSize.val[1] = fabs(size->val[1]);
m_fontSize.val[2] = fabs(size->val[2]);
m_fontSize.val[3] = fabs(size->val[3]);
}
if (underline)
{
m_fontUnderline = *underline;
}
if (diaphaneity)
{
m_fontDiaphaneity = *diaphaneity;
}
//FT_Set_Pixel_Sizes(m_face (int)m_fontSize.val[0] 0);
}

// 恢复原始的字体设置

void CvxText::restoreFont()
{
m_fontType = 0;            // 字体类型(不支持)

m_fontSize.val[0] = 20;      // 字体大小
m_fontSize.val[1] = 0.5;   // 空白字符大小比例
m_fontSize.val[2] = 0.1;   // 间隔大小比例
m_fontSize.val[3] = 0;      // 旋转角度(不支持)

m_fontUnderline = false;   // 下画线(不支持)

m_fontDiaphaneity = 1.0;   // 色彩比例(可产生透明效果)

   // 设置字符大小

FT_Set_Pixel_Sizes(m_face (int)m_fontSize.val[0] 0);
}

// 输出函数(颜色默认为黑色)

int CvxText::putText(IplImage *img const char    *text CvPoint pos)
{
return putText(img text pos CV_RGB(255 255 255));
}
int CvxText::putText(IplImage *img const wchar_t *text CvPoint pos)
{
return putText(img text pos CV_RGB(255 255 255));
}

//

int CvxText::putText(IplImage *img const char    *text CvPoint pos CvScalar color)
{
if (img == NULL) return -1;
if (text == NULL) return -1;

//

int i;
for (i = 0; text[i] != ‘‘; ++i)
{
wchar_t wc = text[i];

// 解析双字节符号

if (!isascii(wc)) mbtowc(&wc &text[i++] 2);

// 输出当前的字符

putWChar(img wc pos color);
}
return i;
}
int CvxText::putText(IplImage *img const wchar_t *text CvPoint pos CvScalar color)
{
if (img == NULL) return -1;
if (text == NULL) return -1;

//

int i;
for (i = 0; text[i] != ‘‘; ++i)
{
// 输出当前的字符

putWChar(img text[i] pos color);
}
return i;
}

// 输出当前字符 更新m_pos位置

void C

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    ..A..H.     46080  2018-05-17 21:26  ConsoleApplication4.vsConsoleApplication4v14.suo

     文件       7822  2018-05-16 21:28  ConsoleApplication4ConsoleApplication4ConsoleApplication4.vcxproj

     文件        945  2018-05-02 22:14  ConsoleApplication4ConsoleApplication4ConsoleApplication4.vcxproj.filters

     文件        165  2018-05-02 22:13  ConsoleApplication4ConsoleApplication4ConsoleApplication4.vcxproj.user

     文件       4503  2018-05-02 21:32  ConsoleApplication4ConsoleApplication4CvText.cpp

     文件       4295  2018-05-02 21:32  ConsoleApplication4ConsoleApplication4CvxText.h

     文件        872  2018-05-16 16:03  ConsoleApplication4ConsoleApplication4DebugConsoleA.C797BC56.tlogCL.command.1.tlog

     文件      10838  2018-05-16 16:03  ConsoleApplication4ConsoleApplication4DebugConsoleA.C797BC56.tlogCL.read.1.tlog

     文件        932  2018-05-16 16:03  ConsoleApplication4ConsoleApplication4DebugConsoleA.C797BC56.tlogCL.write.1.tlog

     文件        247  2018-05-16 16:04  ConsoleApplication4ConsoleApplication4DebugConsoleA.C797BC56.tlogConsoleApplication4.lastbuildstate

     文件       2478  2018-05-16 16:04  ConsoleApplication4ConsoleApplication4DebugConsoleA.C797BC56.tloglink.command.1.tlog

     文件       4774  2018-05-16 16:04  ConsoleApplication4ConsoleApplication4DebugConsoleA.C797BC56.tloglink.read.1.tlog

     文件        910  2018-05-16 16:04  ConsoleApplication4ConsoleApplication4DebugConsoleA.C797BC56.tloglink.write.1.tlog

     文件       1698  2018-05-11 20:49  ConsoleApplication4ConsoleApplication4DebugConsoleApplication4.Build.CppClean.log

     文件        738  2018-05-17 21:01  ConsoleApplication4ConsoleApplication4DebugConsoleApplication4.log

     文件     790829  2018-05-17 21:01  ConsoleApplication4ConsoleApplication4Debug est.obj

     文件    1780736  2018-05-17 21:01  ConsoleApplication4ConsoleApplication4Debugvc140.idb

     文件    2297856  2018-05-17 21:01  ConsoleApplication4ConsoleApplication4Debugvc140.pdb

     文件        872  2018-05-17 21:01  ConsoleApplication4ConsoleApplication4DebugbarTest.tlogCL.command.1.tlog

     文件      35732  2018-05-17 21:01  ConsoleApplication4ConsoleApplication4DebugbarTest.tlogCL.read.1.tlog

     文件        932  2018-05-17 21:01  ConsoleApplication4ConsoleApplication4DebugbarTest.tlogCL.write.1.tlog

     文件       2444  2018-05-17 21:01  ConsoleApplication4ConsoleApplication4DebugbarTest.tloglink.command.1.tlog

     文件       4828  2018-05-17 21:01  ConsoleApplication4ConsoleApplication4DebugbarTest.tloglink.read.1.tlog

     文件        844  2018-05-17 21:01  ConsoleApplication4ConsoleApplication4DebugbarTest.tloglink.write.1.tlog

     文件        247  2018-05-17 21:01  ConsoleApplication4ConsoleApplication4DebugbarTest.tlogbarTest.lastbuildstate

     文件       5793  2018-05-17 21:01  ConsoleApplication4ConsoleApplication4 est.cpp

     文件      23147  2018-05-17 16:44  ConsoleApplication4ConsoleApplication4 img.jpg

     文件      36345  2018-05-17 13:19  ConsoleApplication4ConsoleApplication4w.jpg

     文件     198448  2018-05-17 16:26  ConsoleApplication4ConsoleApplication4w1.jpg

     文件      37083  2018-05-17 16:12  ConsoleApplication4ConsoleApplication4w2.jpg

............此处省略22个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)