• 大小: 361KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-23
  • 语言: C/C++
  • 标签: 二维码  数据纠错  

资源简介

二维码RS数据纠错算法,C++版本,2016年11月最新调试 二维码解析软件很多,但RS数据纠错生成算法,网上C++版本的很少,共享出来,供大家下载!

资源截图

代码片段和文件信息

// BmpView.cpp : implementation file
//

#include “stdafx.h“
#include “TwoQrCode.h“
#include “BmpView.h“

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CBmpView

CBmpView::CBmpView()
{
m_bFistPlay = TRUE;
m_nWidth   = 0;
m_nHeight  = 0;

m_nBmpWidth   = 0;
m_nBmpHeight  = 0;

m_OldmemBmp = NULL;
m_hbm32 = NULL;
m_BmpAuto = TRUE;
m_StarTop  =  0;
m_StarLeft  = 0;

m_MoveFlag = FALSE;

}

CBmpView::~CBmpView()
{



}


BEGIN_MESSAGE_MAP(CBmpView CWnd)
//{{AFX_MSG_MAP(CBmpView)
ON_WM_PAINT()
ON_WM_DESTROY()
ON_WM_ERASEBKGND()
ON_WM_LBUTTONDOWN()
ON_WM_LBUTTONUP()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CBmpView message handlers

void CBmpView::OnPaint() 
{
CPaintDC dc(this); // device context for painting

// TODO: Add your message handler code here
dc.BitBlt(00m_nWidthm_nHeight&m_memDC00SRCCOPY);
// Do not call CWnd::OnPaint() for painting messages
}

BOOL CBmpView::Create(const RECT &rect CWnd *pParentWnd UINT nID)
{
BOOL Flag;
Flag = CWnd::Create(NULL “图片显示窗口“ WS_CHILD | WS_VISIBLE|WS_BORDERrectpParentWndnID NULL);
    if (Flag)
DcEnvInitial();

return Flag;
}

void CBmpView::DcEnvInitial()
{
if(m_bFistPlay)
{
m_bFistPlay = FALSE;
//用默认的参数,获取当前屏幕设备环境
CDC *pWindowDC = GetDC();

//1.用于映射屏幕的内存设备环境
//获取游戏窗口的大小用于下面设置内存位图的尺寸

CRect windowRect;
GetClientRect(&windowRect);
m_nWidth =  windowRect.Width();
m_nHeight = windowRect.Height();

//内存设备环境与屏幕设备环境关联(兼容)
m_memDC.CreateCompatibleDC(pWindowDC);
//内存位图与与屏幕关联(兼容)大小为游戏窗口的尺寸
m_memBmp.CreateCompatibleBitmap(pWindowDCm_nWidthm_nHeight);

//内存设备环境与内存位图关联,以便通过m_memDC在内存位图上作画
m_OldmemBmp = m_memDC.Selectobject(&m_memBmp);


//内存设备环境与内存位图关联,以便通过m_memDC在内存位图上作画
m_memDC.SetTextColor(RGB(25500));
m_memDC.SetBkMode(TRANSPARENT);
DrawFace();
}
}

void CBmpView::DrawFace()
{

     CDC *pDC = GetDC();
 m_memDC.FillSolidRect(00m_nWidth m_nHeightRGB(0xff0xff0xff));
 
if(m_hbm32 != NULL)
{

CBitmap   m_bmp;
    m_bmp.Attach(m_hbm32);

int XDest YDest nDestWidth nDestHeight;
int nHeight=m_nWidth-2nWidth=m_nHeight-2;

CDC MemDC2;
MemDC2.CreateCompatibleDC(pDC);
CBitmap *pOldBitmap=MemDC2.Selectobject(&m_bmp);
BITMAP bm;
m_bmp.GetBitmap(&bm);
   
if(m_BmpAuto)
{
const float fRatio    = (float)(nHeight-16)/(nWidth-16);
const float fImgRatio = (float)bm.bmHeight/bm.bmWidth;

if( fImgRatio > fRatio )
{
nDestWidth  = (int) ((nHeight-16)/fImgRatio);
XDest       = (nWidth-nDestWidth)/2;
YDest       = 8;
nDestHeight = nHeight-16;
}
else
{
XDest       = 8;
nDestWidth  = nWidth-16;
nDe

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

     文件      11640  2016-11-15 19:09  TwoQrCode\BmpView.cpp

     文件       2088  2016-11-14 06:56  TwoQrCode\BmpView.h

     文件      19474  2016-11-16 07:01  TwoQrCode\ColorBmpBtn.cpp

     文件       4035  2016-11-01 11:20  TwoQrCode\ColorBmpBtn.h

     文件       3297  2016-11-15 18:34  TwoQrCode\Galois.cpp

     文件        995  2016-11-15 18:40  TwoQrCode\Galois.h

     文件      26126  2016-11-15 19:44  TwoQrCode\ontentDecoder.cpp

     文件       1852  2016-11-15 15:51  TwoQrCode\ontentDecoder.h

     文件      63267  2016-11-16 08:18  TwoQrCode\QR_Encode.cpp

     文件       5654  2016-11-15 15:14  TwoQrCode\QR_Encode.h

     文件       3633  2016-11-13 19:06  TwoQrCode\ReadMe.txt

    ..A.SH.      4096  2016-11-13 19:20  TwoQrCode\res\Thumbs.db

     文件       1078  2014-09-11 21:25  TwoQrCode\res\TwoQrCode.ico

     文件        401  2016-11-13 19:06  TwoQrCode\res\TwoQrCode.rc2

     文件       1607  2016-11-15 19:26  TwoQrCode\resource.h

     文件       5121  2016-11-14 21:17  TwoQrCode\RsDecode.cpp

     文件        969  2016-11-15 06:51  TwoQrCode\RsDecode.h

     文件       4195  2016-11-15 20:19  TwoQrCode\SinusQRframe.cpp

     文件       1662  2016-11-15 20:21  TwoQrCode\SinusQRframe.h

     文件        211  2016-11-13 19:06  TwoQrCode\StdAfx.cpp

     文件       1929  2016-11-15 06:56  TwoQrCode\StdAfx.h

     文件       8240  2016-11-16 06:49  TwoQrCode\TwoCodeBmp.cpp

     文件       1461  2016-11-16 06:48  TwoQrCode\TwoCodeBmp.h

     文件      36328  2016-11-15 19:26  TwoQrCode\TwoQrCode.aps

     文件       2237  2016-11-16 08:18  TwoQrCode\TwoQrCode.clw

     文件       2105  2016-11-13 19:06  TwoQrCode\TwoQrCode.cpp

     文件       5262  2016-11-16 06:45  TwoQrCode\TwoQrCode.dsp

     文件        543  2016-11-13 19:06  TwoQrCode\TwoQrCode.dsw

     文件       1357  2016-11-13 19:06  TwoQrCode\TwoQrCode.h

     文件     115712  2016-11-16 08:19  TwoQrCode\TwoQrCode.ncb

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

评论

共有 条评论