资源简介
二维码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\SinusQRfr
文件 1662 2016-11-15 20:21 TwoQrCode\SinusQRfr
文件 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个文件信息
- 上一篇:C语言-哈夫曼编码实验报告
- 下一篇:C++简易聊天程序C++简易聊天程序
相关资源
- c语言实现二维码生成
- 二维码驱动C语言
- ZBAR官方开源二维码识别库
- DMDECODER二维码识别MFC工程
- Qrcode二维码生成C++
- C++Builder XE 10.3(二维码).rar
- Zxing cpp二维码识别源码
- c++二维码识别opencv+zbar
- 51单片机生成二维码(QR Code)+12864并
- iOS条形码二维码识别项目源码
- esp32 qr(QRCode.ino)
- 仿微信的扫描二维码登录功能 原理源
- c++ 二维码
- C++ 二维码识别
- 识别条形码及二维码
- qt 解析二维码图片中的文本
- 二维码生成
- opencv+zbar识别二维码
- 二维码扫描+QT
- qrcode 解析一维码和二维码
- c++ 二维码编解码
- C语言 libqrencode 二维码库
- qrcode二维码c++源码可以直接使用的工
- VS2017-MFC-生成二维码小程序
- qt/c++ 实现二维码生成利用qrencode
- Qt5(QWidget)实现的C++二维码生成程序
评论
共有 条评论