Sha256: 481cd4c2fa5dba8d801987550226023138ef0a202983731767cf5d01d1e9ca2a

Contents?: true

Size: 1.31 KB

Versions: 8

Compression:

Stored size: 1.31 KB

Contents

#ifndef _QR_DRAW_
#define _QR_DRAW_

#define MARGIN_SIZE      4	/* マージンサイズ */
#define MAX_MODULESIZE 177	/* データバイト列の領域サイズ */

//=============================================================================
// QRDraw クラス
//=============================================================================
class QRDraw
{
	public:
		QRDraw(){
			this->bit_image=NULL;
		}
		
		virtual ~QRDraw(){
			this->close();
		}
		
		void setup(char *filename, int modulesize, int symbolsize){
			this->msize = modulesize;
			this->ssize = symbolsize;
			this->rsize = (this->ssize + MARGIN_SIZE * 2) * this->msize;
			this->filename = filename;
		}
		
	protected:
		unsigned char **bit_image;	//ピクセルイメージを格納する
		int msize;					// 1ドットを表現するピクセル数(=modulesize)
		int rsize;					// マージンを含めた実際のイメージの一辺
		int ssize;					// シンボルサイズ(マージンを含めない、ドットの個数)
		char *filename;				// 保存するファイル名

	public:
		virtual int draw(char *filename, int modulesize, int symbolsize, 
							unsigned char data[MAX_MODULESIZE][MAX_MODULESIZE], void *opt) = 0;
		void close(){
			int i;
			if(this->bit_image){
				for(i=0; i<this->rsize; i++) free(this->bit_image[i]);
				free(this->bit_image);
			}
			this->bit_image=NULL;
		}
};

#endif

Version data entries

8 entries across 8 versions & 2 rubygems

Version Path
z-rqr-0.2.5 ext/rqr/qr_draw.h
z-rqr-0.2.4 ext/rqr/qr_draw.h
rqr-0.2.2-x86-mswin32 ext/rqr/qr_draw.h
rqr-0.2.1 ext/rqr/qr_draw.h
rqr-0.2.0-x86-mswin32 ext/rqr/qr_draw.h
rqr-0.2.0 ext/rqr/qr_draw.h
rqr-0.2.2 ext/rqr/qr_draw.h
rqr-0.2.1-x86-mswin32 ext/rqr/qr_draw.h