+ All Categories
Home > Documents > Active X Control for Generating 2D Code and Bar Code Images...

Active X Control for Generating 2D Code and Bar Code Images...

Date post: 23-Aug-2020
Category:
Upload: others
View: 10 times
Download: 0 times
Share this document with a friend
81
Active X Control for Generating 2D Code and Bar Code Images QRmaker Pro User’s Manual (Ver. 1.1.13) June 28,2004 DENSO WAVE INCORPORATED Automatic Data Caputure Div.
Transcript
Page 1: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

Active X Control for Generating 2D Code and Bar Code Images

QRmaker Pro

User’s Manual (Ver. 1.1.13)

June 28,2004

DENSO WAVE INCORPORATED Automatic Data Caputure Div.

Page 2: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Preface This manual describes how to use QRmaker Pro which creates 2D code and bar code images. QRmaker Pro is an ActiveX control.

This manual is intended for persons who have a basic knowledge of Windows®. Refer to the Microsoft Windows documentation for the details on Windows.

Copyright © DENSO WAVE, 2004

All rights reserved. No part of this publication may be reproduced in any form or by any means without permission in writing from the publisher.

Specifications are subject to change without prior notice.

All products and company names mentioned are trademarks or registered trademarks of their respective holders.

i

Page 3: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Contents Chapter 1. Outline .......................................................................................................................... 3 Chapter 2. Features ....................................................................................................................... 3 Chapter 3. PC Requirements for Application Execution ................................................................. 4 Chapter 4. Application Development Environment and Available Languages ................................ 4 Chapter 5. Installing/Uninstalling QRmaker Pro ............................................................................. 5

5.1. Installing QRmaker Pro........................................................................................................ 5 5.2. QRmaker Pro Files to be Installed ....................................................................................... 6 5.3. Adding QRmaker Pro to the Windows Registry ................................................................... 7 5.4. Confirming the Registration of QRmaker Pro ...................................................................... 7 5.5. Uninstalling QRmaker Pro ................................................................................................... 7

Chapter 6. Properties ..................................................................................................................... 8 6.1. Property Page...................................................................................................................... 8 6.2. List of Custom Properties .................................................................................................... 9 6.3. Detailed Explanations of Custom Properties ..................................................................... 12

6.3.1. CodeType.................................................................................................................... 18 6.3.2. CellPitch..................................................................................................................... 20 6.3.3. CellAdjust .................................................................................................................. 20 6.3.4. CellUnit...................................................................................................................... 21 6.3.5. QuietZone................................................................................................................... 21 6.3.6. BarHeight .................................................................................................................. 22 6.3.7. NwRatio ..................................................................................................................... 22 6.3.8. ChkDigit..................................................................................................................... 22 6.3.9. ChrDisplay (Human-readable character display) .................................................... 23 6.3.10. InputData, InputDataA and InputDataB............................................................... 24 6.3.11. TextOrBinary........................................................................................................... 26 6.3.12. Picture ...................................................................................................................... 26 6.3.13. ForeBColor and ForeWColor (Foreground and background colors) ...................... 27 6.3.14. NumCell and NumRow ........................................................................................... 28 6.3.15. Divide1 and Divide2 (Code Splitter) -- Encoding into split code images.............. 29 6.3.16. Mirror (Normal or mirror image for 2D codes)....................................................... 31 6.3.17. QRversion................................................................................................................. 31 6.3.18. InputData for MaxiCode (Mode 2 or 3)................................................................... 32 6.3.19. PDF417Colum, PDF417Row and PDF417HWratio ............................................... 32 6.3.20. ImageData (Black/white cell data or bar/space width data)................................. 33 6.3.21. Note for the setting order of properties .................................................................. 36

6.4. List of Stock Properties...................................................................................................... 37 6.5. Detailed Explanations of Stock Properties......................................................................... 37 6.6. Default Properties Provided by Visual Basic...................................................................... 37 6.7. Trapping the Property Setting Errors ................................................................................. 38 6.8. Image Encoding Status (by MakeStatus Property) ............................................................ 40

Chapter 7. Methods...................................................................................................................... 41 7.1. List of Methods .................................................................................................................. 41 7.2. Detailed Explanations of Methods ..................................................................................... 41

Chapter 8. Images Returned from QRmaker Pro ......................................................................... 44 Chapter 9. Correction for Cell Size and Bar Width ....................................................................... 46

9.1. Making a Cell Size Correction (for QR Code, MaxiCode and Data Matrix)....................... 46 9.2. Cell correction for closing up a gap between adjacent black cells ..................................... 48 9.3. Making a Bar Width Correction (for bar codes and PDF417)............................................ 49

Chapter 10. Using QRmaker Pro in Visual C++ Programming..................................................... 50 10.1. Assigning a Data String to the InputData Property........................................................... 51 10.2. Assigning a Data String (Binary) to the InputDataB Property ........................................... 51 10.3. Drawing and Saving an Image by the Picture Property ................................................... 52 10.4. Drawing an Image by DrawQrImage Method................................................................... 53 10.5. Drawing an Image by Render() Property of Picture Holder Type ..................................... 53

1

Page 4: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

10.6. Using the CreateQrMetaFile Method ............................................................................... 54 Chapter 11. Using QRmaker Pro with Microsoft Access............................................................... 55

11.1. Source Code for Creating a Form.................................................................................... 56 11.2. Source Code for Creating a Report.................................................................................. 56

Chapter 12. Creating Easily Readable 2D Codes ........................................................................ 57 Chapter 13. Specifications of 2D Codes....................................................................................... 58

13.1. QR Code.......................................................................................................................... 58 13.2. MaxiCode ........................................................................................................................ 60 13.3. Data Matrix ...................................................................................................................... 63

Chapter 14. Specifications of Bar Codes...................................................................................... 65 14.1. EAN (Product Codes) ...................................................................................................... 65 14.2. UPC................................................................................................................................. 66 14.3. Codabar (NW-7) .............................................................................................................. 67 14.4. ITF (Interleaved 2 of 5) .................................................................................................... 68 14.5. STF (Standard 2 of 5) ...................................................................................................... 69 14.6. Code 39 ........................................................................................................................... 70 14.7. Code 93 ........................................................................................................................... 70 14.8. Code 128 ......................................................................................................................... 72 14.9. EAN-128 .......................................................................................................................... 74 14.10. MSI ................................................................................................................................ 74 14.11. Code 11.......................................................................................................................... 74 14.12. PLESSEY/ANKER......................................................................................................... 75

Chapter 15. Compatibility with QRmaker 1.3x.............................................................................. 76 15.1. Properties Newly Added to QRmaker Pro........................................................................ 76 15.2. Enhanced Property--CellUnit ........................................................................................... 77 15.3. Enhanced Method--CreateQrMetaFile............................................................................. 77

Chapter 16. Frequently Asked Questions (FAQ) .......................................................................... 78

2

Page 5: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Chapter 1. Outline QRmaker Pro is an ActiveX control or OCX control which is sometimes called an OLE custom control according to a previous naming convention. QRmaker Pro has the filename QRmakerPro.ocx and creates 2D code and bar code images.

You can use QRmaker Pro in Visual Basic 6.0 (VB), Visual C++ 6.0 (VC++), Microsoft Access 95, or later versions. This manual describes how to use QRmaker Pro mainly in VB. Some chapters give usage samples in VC++ and Access.

Chapter 2. Features If you specify a data string (to be encoded into a 2D code or bar code image) and parameters such as cell size by using the properties and methods, then QRmaker Pro creates a code image (picture in metafile format) and returns it to the container application in any of the following five formats you specify. You may enter a data string in the Unicode or binary format.

1. Picture property data 2. Picture directly drawn on a device specified by calling the desired method 3. Image copy on the Clipboard by calling the desired method (EMF or WMF) 4. Picture drawn on a control window of the container application 5. Disk file (BMP, PNG, TIFF, WMF or EMF)

If you set the Auto Redraw mode on in developing a QRmaker Pro application, you may visually confirm how an image will change in real time as you change the parameters, on the control window of your program.

If you define parameters (properties) that will not change at run-time in program development, you can save programming time and effort.

3

Page 6: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Chapter 3. PC Requirements for Application Execution

OS: Windows 95/98, Windows NT 4.0 Workstation, or Windows 2000 Professional

CPU: 486Dx4 or higher, Pentium class processor or faster recommended

Mmemory: 16 MB or more for Windows 95

32 MB or more for Windows 98

64 MB or more for Windows NT 4.0 Workstation

Windows 2000 Professional or Windows XP Professional

Disk: 3 MB or more hard disk space

Chapter 4. Application Development Environment and Available Languages OS: Windows 95/98, Windows NT 4.0 Workstation or Windows 2000 Professional

SDK: Visual Basic 5.0/6.0 Visual C++ 5.0/6.0 Access 95/97/2000

4

Page 7: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Chapter 5. Installing/Uninstalling QRmaker Pro

5.1. Installing QRmaker Pro Run the QRmaker Pro installer named Setup.exe stored in the QRmaker Pro CD-ROM according to the steps below.

1. Insert the QRmaker Pro CD-ROM into the CD-ROM drive of your computer. 2. Click the Start button and then click Run to display the Run dialog box as shown below. 3. Type D:\Inst_E\setup.exe. (If your CD-ROM drive is other than D:, type the drive letter

instead of D.)

4. Follow the Wizard, and the installation of QRmaker Pro will be completed and the drive icon

will be registered in the program folder.

5

Page 8: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

5.2. QRmaker Pro Files to be Installed QRmaker Pro installer (Setup.exe) will install the following QRmaker Pro files.

Filename Description Distribution

QRmakerPro.ocx ActiveX control Yes

QRmakerPro.lib Link library (required for application development in VC++) No

QRmakerPro.lic License control file (required for application development) No

QRmakerPro.tlb Type library TLB file (required for application development) No

QrmakerPro_Users_Manual.pdf

User's Manual (this document) No

readme.txt Supplementary document No

License.txt License agreement No

testOCX2.exe Test program for confirming the registration of QRmaker Pro to the Registry

No

Regsvr32.exe MS-DOS program to register OCX programs Yes

You may distribute copies of QRmakerPro.ocx and Regsvr32.exe only to others together with a QRmaker Pro application you develop. You may not distribute any other files that are required for developing a QRmaker Pro application and not required at run-time of the application.

The QRmaker Pro CD-ROM also includes the following sample files that show how you use QRmaker Pro. QRmaker Pro installer will create a "Sample" directory in the parent directory where QRmaker Pro is located and create subdirectories in the Sample directory as listed below.

The sample files are provided only for your reference. They cannot be used for practical applications as the operation of those files is assured but parameter entry range checking and error handling have been omitted.

You may not distribute copies of any of these files to others.

Subdirectories File type Contents

Access Access file Sample data base created by Access 95 for automatic billing

VC Subset of Visual C++ source files

Sample programs (source file and project file) created in Visual C++ 6.0

VB Subset of Visual Basic source files

Sample programs (source file and project file) created in Visual Basic 6.0

6

Page 9: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

5.3. Adding QRmaker Pro to the Windows Registry To use QRmaker Pro as an OCX custom control, you need to add QRmaker Pro to the Windows Registry beforehand.

Double-click the "Register OCX" icon registered, and QRmaker Pro will be registered as "QRmaker Pro."

5.4. Confirming the Registration of QRmaker Pro To confirm that QRmaker Pro has been installed properly, run the "testOCX2.exe" icon registered. A dialog appears. Entering a character string into the text box in the dialog displays the code image generated by QRmaker Pro.

If any of the following error messages appears, it means that QRmaker Pro has not been registered properly. You need to install QRmaker Pro again to register it properly.

Unsupported operation executed. Variable type incorrect.

5.5. Feature restrictions imposed on the Trial Edition The QRmaker Pro Trial will create a QR Code image composed of a character string different from what you have entered.

If you enter numeric characters, the Software will automatically translate them into "0" characters, if you enter capital alphabet, into "A”, and if you enter small alphabet, into "a", containing the same number of characters entered.

Example:

Character string entered: 0566259800QRCODEdensowave

Character string embedded: 0000000000AAAAAAaaaaaaaaa

In the process of QR Code creation, it may interpret an entered numeric character as "A” of the alphanumeric mode depending upon the number of characters entered and the mixing of character types since the Software automatically changes character modes.

These feature restrictions stated above are imposed on the trial edition only, never on the licensed edition of QRmaker Pro.

5.6. Uninstalling QRmaker Pro Before uninstalling QRmaker Pro, you need to remove registry entries for the OCX custom control "QRmaker Pro."

To remove them, double-click the "Remove OCX" icon registered. After that, use the Add/Remove Programs in the Control Panel to select and remove QRmaker Pro.

7

Page 10: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Chapter 6. Properties 6.1. Property Page

The window given below shows a list of properties that is called up by clicking the Property Page in the QRmaker Pro property window in VB Design Mode.

8

Page 11: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.2. List of Custom Properties The custom properties of QRmaker Pro are listed below.

Properties Type Default Read/Write Entry range Definition

AutoRedraw short 0 R/W 0 or 1 Turns the Auto Redraw mode on (if not 0) or off (if 0).

BarChrGap short 1 R/W 1 to 10 Sets the intercharacter gap for bar codes.

BarHeight short 15 R/W 1 to 1000

Sets the bar code height (mm).

Bend short -1 R

Returns the character position following the end position of the current data string to be encoded.

Bstart short 0 R Returns the start position of the current data string to be encoded.

CellAdjust short 0 R/W (Note 1)

Sets a cell correction value (for 2D codes) or module width correction value (for bar codes) in dpi.

CellPitch short 50 R/W 1 or greater

Sets the center-to-center distance of adjacent cells or modules in dots.

CellUnit short 2540 R/W Sets the printer resolution in dpi.

ChkDigit short 1 R/W 0, 1 or 2

Specifies whether or not to add a check digit(s) to bar code data. 0 = No check digit 1 = A single-digit check digit 2 = A double-digit check digit

ChrDisplay short 1 R/W 0, 1 or 2

Specifies whether or not to display human-readable characters. 0 = No 1 = Yes 2 = Yes (height fixed to 3 mm)

CodeType short 0 R/W 0 to 17 Specifies the code type.

Divide1 short 1 R/W 1 to

denominator

Sets the ordinal ID number assigned to the nth split code. (Numerator)

Divide2 short 1 R/W 1 to 99 Sets the number of splits. (Denominator) It depends on the code type.

DmxModel short 1 R/W 1 or 2

Specifies the Data Matrix model. 1 = Square 2 = Rectangular

EccLevel short 1 R/W 0 to 3 Sets the error correction level for QR Code.

ForeBColor OLE_COLOR 0 R/W Specifies the foreground

color to be used for black

9

Page 12: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Properties Type Default Read/Write Entry range Definition

cells or bars.

ForeWColor OLE_COLOR

167772

15 R/W

Specifies the background color to be used for white cells, spaces, or quiet zones.(=0x00FFFFFF)

GapAdjust short 0 R/W 0 or 1 Eliminates the gap between adjacent black cells.

ImageData VARIANT - R

Returns the black/white cell data or bar width data scanned, in hexadecimal format.

ImageHeight float - R Returns the height of an image generated, in mm.

ImageWidth float - R Returns the width of an image generated, in mm.

InputData VARIANT "QRCODE" R/W

Sets a data string (Unicode set) to be encoded into a 2D code or bar code in text mode.

InputDataA VARIANT - W Sets a binary data string to be encoded into a 2D code in text mode.

InputDataB VARIANT - W Sets a binary data string to be encoded into a 2D code in binary mode.

MakeStatus short 0 R Returns the encoding status.

MaxiMode short 3 R/W 1 to 4

Specifies the MaxiCode mode. 1 = Mode 2 2 = Mode 3 3 = Mode 4 4 = Mode 5

Mirror short 0 R/W 0 or 1 Specifies normal image or mirror image (reverse) for 2D code images.

ModelNo short 2 R/W 1,2,3 Sets the QR Code model number.

NumCell short - R

Returns the number of cells per horizontal side or the number of bars in a code generated.

NumRow short - R

Returns the number of cells per vertical side or the number of rows in a code generated.

NwRatio float 2.5 R/W 2 to 3

Specifies the ratio of wide bar (space) and narrow bar (space) for two-width symbologies.

OptEANUPC short 0 R/W 0 or 1

Specifies whether or not to create AddOn codes (2- or 5-digit) in EAN-8/13 or UPC-A/E symbols. 0 = No 1 = Yes

OptITF short 0 R/W 0 or 1 Specifies whether or not to add a bearer bar in ITF

10

Page 13: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Properties Type Default Read/Write Entry range Definition

symbols. 0 = No 1 = Yes

OptSTF short 0 R/W 0 or 1

Specifies start/stop characters. 0 = Normal 1 = Short

OptCODE128 short 0 R/W 0 to 2

Specifies the code set for Code 128 and EAN128. 0 = Code set A 1 = Code set B 2 = Code set C

OptPLESSEY short 0 R/W 0 to 2

Specifies the Plessey/Anker type. 0 = Plessey dual scan 1 = Plessey single scan 2 = Anker

PDF417Colum short 0 R/W 0,1 to

30

Sets the number of columns for PDF417 symbols. 0 = Auto

PDF417Ecc short 0 R/W 0,1 to 9Sets the error correction level for PDF417 symbols. 0 = Auto

PDF417HWratio short 4 R/W 1 to 7

Sets the aspect ratio (height/width rate) for PDF417 symbols.

PDF417Model short 1 R/W 1, 2 or 3

Specifies the PDF417 model.0 = Standard 2 = Truncated 3 = microPDF417

PDF417Row short 0 R/W 0,3 to 90

Sets the number of rows for PDF417 symbols. If 0, Auto.

PDF417XYratio short 4 R/W 1 to 10 Sets the total height of rows

for PDF417 symbols.

Picture LPPICTURES - R

Returns the picture image of the 2D code or bar code generated.

QRversion short 0 R/W 0 to 40 Sets the QR Code version number.

QuietZone short 5 R/W 0 or greater

For 2D codes: Sets the margin around a 2D code. For bar codes: Sets the margin at the right and left sides of a bar code.

Rotate short 0 R/W 0 to 3 Sets the rotation angle of a code image. (0°, 90°, 180°, or 270°)

TextOrBinary short 0 R 0 or 1 Returns the current encoding mode (Text or binary mode).

ThrowError short 0 R/W 0 or 1 Defines how to handle errors if caused in other property settings.

(Note 1) The entry range of the CellAdjust is from -CellPitch+1 to CellPitch-1.

11

Page 14: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.3. Detailed Explanations of Custom Properties

Properties Functions

AutoRedraw

If you assign any non-zero value to this property, QRmaker Pro automatically updates the existing code image following changes in other properties. If you set 0, you need to use a Refresh method to update the existing code image.

BarChrGap This property sets the intercharacter gap for Codabar and Code 39 symbol images.

BarHeight This property sets the bar code height excluding the height of human readable characters in mm. For details, refer to Section 6.3.6.

Bend

This property is useful when the code splitter is activated (when the Divide2 property is set to more than 1). It returns the character position following the end position of the current data string to be encoded from the whole data string. The character counting rule is that the first position of the whole data string is counted as 0 and the count increases by +1 for a single-byte character and by +2 for a double-byte character. When the code splitter is deactivated, this property always returns the character position following the end position of the current data string to be QR-coded. You can refer to the returned value, but cannot modify or set the parameters.

Bstart

This property is useful when the code splitter is activated (when the Divide2 property is set to more than 1). It returns the start position of the current data string to be encoded from the whole data string. The character counting rule is that the first position of the whole data string is counted as 0 and the count increases by +1 for a single-byte character and by +2 for a double-byte character. When the code splitter is deactivated, this property always returns the value 0. You can refer to the returned value, but cannot modify or set the parameters.

CellAdjust

This property sets a cell correction value or module width correction value in dots per inch (dpi). 2D codes: A black cell of the minimum drawing element is a square with a side consisting of dots given by the "CellPitch + CellAdjust." Bar codes: A module (a basic set of bar and space) is drawn as "CellPitch + CellAdjust" wide by BarHeight high. If the black and white dot size ratio of the codes printed by your printer deviates from the ideal 1:1 ratio, you can optimize the ratio with this property. For details, refer to Chapter 9. NOTE: If you modify the CellUnit value after setting up the CellAdjust

property, QRmaker Pro automatically adjusts the CellAdjust value to preserve the original print image size. For details, refer to Section 6.3.3.

CellPitch

This property sets the center-to-center distance between adjacent cells or modules in dots. NOTE: If you modify the CellUnit value after setting up the CellPitch

property, QRmaker Pro automatically adjusts the CellPitch value to preserve the original print image size.

12

Page 15: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Properties Functions For details, refer to Section 6.3.2.

CellUnit

This property sets the resolution of the printer you use in dots per inch (dpi). The reciprocal value of the dpi is equal to the CellPitch value and the unit dot size used in the CellAdjust property. If 0 is assigned to this property, the resolution is treated as 2,540 dpi (0.01 mm). If -1, the resolution of the default printer will apply. NOTE: If you modify the CellUnit value, QRmaker Pro automatically

adjusts the CellAdjust value and CellPitch value to preserve the original print image size. For details, refer to Section 6.3.4.

ChkDigit

This property specifies whether or not to add a check digit(s) calculated to bar code data. If 0 is assigned to this property, no check digit will be added; if 1 or 2 is set, a single- or double-digit check digit will be added, respectively. Note that EAN13, EAN8, UPCA, UPCE, Code 93, Code 128, EAN128, Code 11 and Plessey symbols are always followed by a check digit(s) independent of this property setting. Code 11 symbols are followed by a single-digit check digit even if 0 is assigned to this property. For details, refer to Section 6.3.8.

ChrDisplay

This property specifies whether or not to display human-readable characters. If 0 is assigned to this property, no display appears; if 1, the display appears; if 2, the display with the height fixed to 3 mm appears. For details, refer to Section 6.3.9.

CodeType

This property specifies the code type. 0 = QR, 1 = EAN13, 2 = EAN8, 3 = UPCA, 4 = UPCE, 5 = Codabar, 6 =ITF, 7 = STF, 8 = Code39, 9 = Code93, 10 = Code128, 11 = EAN128, 12 = MSI, 13 = Code11, 14 = Plessey, 15 = MaxiCode, 16 = PDF417, 17 = Data Matrix For details, refer to Section 6.3.1.

Divide1

This property sets the ordinal ID number assigned to the nth split code of a 2D code. NOTE: If you set a value larger than the Divide2 value (Denominator),

QRmaker Pro will automatically change the Divide2 value to the same as the Divide1 value. For details, refer to Section 6.3.15.

Divide2

This property sets the number of splits for a 2D code. If 1 is set to this property, QRmaker Pro will not split the 2D code. The maximum number of splits available in QRmaker Pro is as follows: QR Code mode 1 or 2: 16 MaxiCode: 8 PDF417: 99 Data Matrix: 16 NOTE: If you set a value smaller than the Divide1 value (Numerator),

QRmaker Pro will automatically change the Divide1 value to the same as the Divide2 value.

NOTE: MicroQR code cannot be split.

NOTE: If the number of characters you enter to encode is less than the number of splits, QRmaker Pro cannot split it correctly.

13

Page 16: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Properties Functions For details, refer to Section 6.3.15.

DmxModel

This property specifies the Data Matrix model number. 1 = ECC200 square, 2 = ECC200 rectangular

Square Rectangular

EccLevel

This property sets the error correction level for QR code symbols. 0 = L (7%), 1 = M (15%), 2 = Q (25%), 3 = H (30%) The percentage in parentheses denotes the maximum restorable rate of a code area. It can diminish depending upon the location of dirtied or damaged area. NOTE: If a value other than 0 to 3 is set, QRmaker Pro will automatically

interpret it as 0 (L).

ForeBColor This property specifies the foreground color to be used for black cells or bars. For details, refer to Section 6.3.13.

ForeWColor This property specifies the background color of symbol to be used for white cells, spaces or quiet zones. For details, refer to Section 6.3.13.

GapAdjust

This property enables or disables the black cell gap elimination function for QR Code images. 0 = Disable, 1 = Enable In some applications, there might be gaps between black cells in a code image displayed or printed. To eliminate such gaps, enable this function by assigning 1 to this property. Note that enabling this function may not take effect in some OS or applications. Usually disable this function. Enabling it might cause QR code images generated with small CellPitch value to become hard-to-read.

ImageData

This property returns the black/white cell data or bar width data scanned, in hexadecimal format. You can refer to the returned value, but cannot modify or set the parameter. For details, refer to Section 6.3.20.

ImageHeight

This property returns the height of an image generated in mm including the quiet zones. You can refer to the returned value, but cannot modify or set the parameter.

ImageWidth

This property returns the width of an image generated in mm including the quiet zones. You can refer to the returned value, but cannot modify or set the parameter.

InputData

This property sets a Unicode data string to be encoded into a 2D code or bar code. Even if the code splitter is activated, it is necessary to set a complete data string. You may enter the ASCII character set, its extensions (such as Alphanumeric Kana), and some future character sets (including basic ASCII characters and Shift-JIS character set). All of these characters should be given in Unicode format. In this property, binary data of codes in 0x00, 0x81 to 0x9F, and 0xE0 to

14

Page 17: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Properties Functions 0xFC cannot be set. Setting up this InputData property automatically assigns 0 to the TextOrBinary property, indicating that a data string is encoded in the text mode. For details, refer to Section 6.3.10.

InputDataA

This property sets a binary data string to be encoded into a 2D code. Even if the code splitter is activated, it is necessary to set a complete data string. You may enter all codes within the range from 0x00 to 0xFF. To include any character code in the binary data string, you need to convert it into the ASCII or Shift-JIS beforehand. This property can be set only at run-time and cannot be set or referred to in developing a QRmaker Pro application. Setting up this InputDataA property automatically assigns 0 to the TextOrBinary property, indicating that a data string is encoded in the text mode. For details, refer to Section 6.3.10.

InputDataB

This property sets a binary data string to be encoded into a 2D code. Even if the code splitter is activated, it is necessary to set a complete data string. You may enter all codes within the range from 0x00 to 0xFF. To include any character code in the binary data string, you need to convert it into the ASCII or Shift-JIS beforehand. This property can be set only at run-time and cannot be set or referred to in developing a QRmaker Pro application. Setting up this InputDataB property automatically assigns 1 to the TextOrBinary property, indicating that a data string is encoded in the binary mode. For details, refer to Section 6.3.10.

MakeStatus

This property returns the encoding status. If encoding is normally processed, this property returns 0. QRmaker Pro updates the MakeStatus value when a new code is created by calling any method or with the AutoRedraw property set to any non-zero value. You can refer to the returned value, but cannot modify or set the parameters. For details, refer to Section 6.8.

MaxiMode

This property specifies the MaxiCode mode number. 1 = Mode 2, 2 = Mode 3, 3 = Mode 4, 4 = Mode 5

Mode 2 Mode 3 Mode 4 Mode 5 For details, refer to Section 6.3.18.

Mirror

This property specifies normal image or mirror image (reverse) for 2D code images. 0 = Off (normal image), 1 = On (mirror image)

Off On

15

Page 18: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Properties Functions For details, refer to Section 6.3.16.

ModelNo

This property sets the QR Code model number. 1 = Model 1, 2 = Model 2, 3 = MicroQR

Model 1 Model 2 MicroQR NOTE: If you set a value other than 1, 2, and 3 to this property, it will be

ignored and the previous value remains effective.

NumCell

This property returns the number of cells per horizontal side or the number of bars in a code generated. QR Code, MaxiCode, Data Matrix: Number of cells per horizontal side PDF417: Total number of modules in the horizontal direction Bar code: Total number of bars and spaces You can refer to the returned value, but cannot modify or set the parameters. For details, refer to Section 6.3.14.

NumRow

This property returns the number of cells per vertical side or the number of rows in a code generated. QR Code, MaxiCode, Data Matrix: Number of cells per vertical side PDF417: Number of rows Bar code: Always 1 You can refer to the returned value, but cannot modify or set the parameters. For details, refer to Section 6.3.14.

NwRatio This property specifies the ratio of wide space and narrow space for two-width symbologies. For details, refer to Section 6.3.7.

OptEANUPC

This property specifies whether or not to create AddOn codes (2- or 5-digit) in EAN-8/13 or UPC-A/E symbols. 0 = No 1 = Yes

OptITF

This property specifies whether or not to add a bearer bar (black frame around code symbol) in ITF symbols. 0 = No 1 = Yes

OptSTF This property specifies start/stop characters in STF symbols. 0 = Normal 1 = Short

OptCODE128 This property specifies the code set for Code 128 and EAN128. 0 = Code set A, 1 = Code set B, 2 = Code set C

OptPLESSEY This property specifies the Plessey/Anker type. 0 = Plessey dual scan, 1 = Plessey single scan, 2 = Anker

PDF417Colum This property sets the number of columns for PDF417 symbols. 0 = Auto, 1 to 30 = Number of columns you can specify For details, refer to Section 6.3.19.

PDF417Ecc This property sets the error correction level for PDF417 symbols.

16

Page 19: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Properties Functions 0 = Auto, 1 = 2, 2 = 4, 3 = 8, 4 = 16, 5 = 32, 6 = 64, 7 = 128, 8 = 256, 9 = 512 If the PDF417Ecc is set to 4, for example, the number of correction codewords to be added is 16

PDF417HWratio

This property sets the aspect ratio (height/width rate) for PDF417 symbols. This property takes effect only when both the PDF417Colum and PDF417Row are set to 0 (Auto). 1 = 8:1, 2 = 4:1, 3 = 2:1, 4 = 1:1, 5 = 1:2, 6 = 1:4, 7 = 1:8 For details, refer to Section 6.3.19.

PDF417Model

This property specifies the PDF417 model. 1 = Standard, 2 = Truncated, 3 = microPDF417

Standard Truncated Micro PDF417

PDF417Row This property sets the number of rows for PDF417 symbols. 0 = Auto, 3 to 90 = Number of rows you can specify For details, refer to Section 6.3.19.

PDF417XYratio This property sets the height of a single row in the ratio of the row height/X dimension for PDF417 symbols.

Picture This property returns the picture image of the 2D code or bar code generated.

QRversion

This property sets the QR Code version number. 0 = Auto (A code image can be generated with the minimum version that

can contain text (bytes) entered.) 1 to 40 = A code image can be generated with the specified version. (1 to 14 for Model 1, 1 to 40 for Model 2, and 1 to 4 for MicroQR) For details, refer to Section 6.3.17.

QuietZone

This property sets the print-prohibited area surrounding a 2D code image or at the right and left sides of a bar code image. For 2D codes, the unit is the number of cells; for bar codes, it is the number of modules. Quiet zones recommended: QR Code Model 1 and Model 2: Min. 4 cells MicroQR: Min. 2 cells PDF417: Min. 2X (X = Module width) MaxiCode, Data Matrix: Min. 1 module Bar codes: Min. 10 modules NOTE: If you set any negative value, QRmaker Pro will interpret it as 0.

For details, refer to Section 6.3.5.

17

Page 20: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Rotate

This property sets the rotation angle of a code image. 0 = 0°, 1 = 90°, 2 = 180°, 3 = 270° NOTE: If you set a value other than 0, 1, 2, and 3, QRmaker Pro will

interpret it as 0 (0°).

0° 90° 180° 270°

TextOrBinary

This property returns the current 2D-coding mode. 0 = Text mode, 1 = Binary mode If you set or modify the InputData or InputDataA property, this property returns 0; if you set or modify the InputDataB property, it returns 1. You can refer to the returned value, but cannot modify or set the parameter. For details, refer to Section 6.3.11.

ThrowError

This property defines how to handle errors that occurred in other property settings. When any non-zero value is assigned to this property: For properties whose entry range is specified, if you attempt to set a value out of the range, this ThrowError property will cause an error without modifying the value. To trap the error, use the On Error Goto statement in VB and TRY or CATCH in VC++. When 0 is assigned to this property: Even if you set a value out of the entry range, this ThrowError property will ignore the new setting or reset it to the default value without causing an error. For details, refer to Section 6.7.

6.3.1. CodeType Types of 2D codes and bar codes Check digit(s)

CodeType Main Sub

Max. capacity Digits Y/N System

Model 1 1167

Model 2 70890 QR Code

MicroQR 35

ECC (Reed-Solomon)

Normal 131 EAN-13

Add On 181 No MOD-10

Normal 82 EAN-8

Add On 131 No MOD-10

Normal 123 UPC-A

Add On 171 No MOD-10

Normal 74 UPC-E

Add On 121 No MOD-10

18

Page 21: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Types of 2D codes and bar codes Check digit(s)

CodeType Main Sub

Max. capacity Digits Y/N System

5 Codabar(NW-7) 120 1 Yes MOD-16

Standard 1206 ITF

Bearer Bar 1201 Yes MOD-10

Normal Start/Stop 1207 STF

Short Start/Stop 1201 Yes MOD-10

8 Code 39 120 1 Yes MOD-43

9 Code 93 250 1 No MOD-47

Code Set A

Code Set B 10 Code 128

Code Set C

250 1 No MOD-103

Code Set A

Code Set B 11 EAN-128

Code Set C

250 1 No MOD-103

12 MSI 120 1,2 Yes MOD-10

13 Code 11 120 1,2 No MOD-11

Plessey Dual Scan

Plessey Single Scan 14 Plessey/Anker

Anker

25 2 No CRC-8

Mode 2 126

Mode 3 126

Mode 4 13815 MaxiCode

Mode 5 113

ECC (Reed-Solomon)

Standard 2710

Truncated 271016 PDF417

Micro PDF417 359

ECC (Reed-Solomon)

Ecc200 Square 311617 Data Matrix Ecc200

Rectangular 98 ECC (Reed-Solomon)

19

Page 22: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.3.2. CellPitch The CellPitch property specifies the center-to-center distance between adjacent cells for 2D codes or between adjacent modules for bar codes. If 0 is assigned to the CellAdjust property, the black and white cells (for 2D codes) or the bar and space (for bar codes) become equal to each other in size. The cell pitch is expressed in dots or mm depending upon the unit (dpi or mm) specified in the CellUnit property. The default cell pitch in Design Mode is 50 dots that is the nearest possible value to 0.5 mm.

NOTE: If the cell pitch (module size) or data volume to be encoded is large, the created code image will exceed the display area and its whole image will not be able to be displayed. However, such display states do not influence the code image copied onto Clipboard, printed or saved into a file at all, so you can use such a created code image as a normal one.

NOTE: For 2D codes: The cell pitch of 5 dots or greater is recommended. Setting 4 dots or less to the cell pith may cause scanning problems depending upon the printer you use even if the cell size is higher than the minimum resolution of barcode/2D code readers to be used.

For bar codes: The module pitch of 3 dots or greater is recommended. Setting 2 dots or less to the module pith may cause scanning problems depending upon the printer you use even if the cell size is higher than the minimum resolution of barcode/2D code readers to be used.

6.3.3. CellAdjust The CellAdjust property sets a cell correction value or module width correction value as the number of dots calculated from the count specified by the CellUnit property.

This correction adjusts the print size of black and white cells for 2D codes, and the print size of bars and spaces for bar codes, without changing the overall code size (cell pitch). Use this feature, for example, when you use an ink jet printer that may print black fat so that the print size of a cell will deviate from the ideal size. To avoid this issue, set a negative correction value, and the printing results can be close to a 1:1 white and black dot size ratio.

For details, refer to Chapter 9.

20

Page 23: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.3.4. CellUnit The CellUnit property specifies the printer resolution (dpi). The default unit in Design Mode is 2540 dpi (0.01 mm). To get the resolution of the default printer at run-time, set -1 to this property.

Changing the CellUnit value will automatically modify the CellPitch value so that the same size of printout will result.

NOTE: If you cannot define the printer to be used at run-time of QRmaker Pro, assign -1 to this property in the initialization section of the application program to get the resolution of the default printer and do not change it. Mismatch between the CellUnit value and the resolution of the printer you use will result in low-quality code images that are difficult to read by barcode/2D code readers.

When saving a created code image as an enhanced metafile (EMF), it is essential to keep matching between the CellUnit value and the default printer resolution since QRmaker Pro refers to the parameters preset to the default printer as reference device parameters.

6.3.5. QuietZone The QuietZone property sets the print-prohibited area (quiet zone) surrounding a 2D code image or at the right and left sides of a bar code image. The unit is the number of cells for 2D codes, and the number of modules for bar codes.

The table below lists the quiet zone standardized for each code type.

Code type Quiet zone

Model 1 Min. 4 cells Model 2 Min. 4 cells QR Code

MicroQR Min. 2 cells

Bar code All types Min. 10 modules or 2 mm, either greater value

MaxiCode Mode 2, 3, 4, 5 Min. 1 cell Standard, Truncated Min. 2 modules

PDF417 microPDF417 Min. 1 module

Data Matrix Square, Rectangular Min. 1 cell

NOTE: It is recommended that sufficient spaces be left, taking into account that the minimum quiet zone required differs depending upon barcode/2D code readers you use and that code images printed will be blurred or shifted.

21

Page 24: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.3.6. BarHeight The BarHeight property sets the print height of a bar code to be generated in mm. The default is 15 mm.

The bar height specified by this property does not include the height of human-readable characters. The total height including human-readable characters can be calculated by "BarHeight x 1.25" or "BarHeight + 3 mm" if the ChrDisplay property is set to 1 (Yes) or 2 (Yes, height fixed to 3 mm), respectively.

When you create a BMP, PNG or TIFF file by calling the CreateQrMetaFile method, the bar height will be the number of dots calculated from the count specified by the CellUnit property.

NOTE: It is recommended that the bar height be usually at least 10 mm. Specifying the low height will generate a hard-to-read code image.

6.3.7. NwRatio The NwRatio property specifies the ratio of a wide bar (or space) and narrow bar (or space) for two-width symbologies such as Codabar, ITF, STF, Code 39, MSI, and Code 11. The entry range is from 2.0 to 3.0 in increments of 0.1. The default is 2.5.

6.3.8. ChkDigit The ChkDigit property specifies whether or not to add a check digit(s) to bar codes (Codabar, ITF, STF, Code 39, and MSI) that are available without a check digit.

For MSI and Code 11, this property selects a single-digit or double-digit check digit.

NOTE: Setting 0 (no check digit) is not recommended to prevent bar codes from being misread.

22

Page 25: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.3.9. ChrDisplay (Human-readable character display) The ChrDisplay property specifies whether or not to display human-readable characters below a bar code image created. The font can be changed by the Font property (one of the stock properties in Sections 6.4 and 6.5).

For bar codes except Code 11, Code 93, Code 128, and EAN-128, the check digits will also display as human-readable characters.

The bar height specified by the BarHeight property does not include the height of this character string. The total height including this string can be calculated by "BarHeight x 1.25" or "BarHeight + 3 mm" if the ChrDisplay property is set to 1 (Yes) or 2 (Yes, height fixed to 3 mm), respectively.

23

Page 26: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.3.10. InputData, InputDataA and InputDataB QRmaker Pro provides three properties to enter a data string to be encoded into a 2D code or bar code--InputData, InputDataA and InputDataB. To enter Unicode data to be encoded into a 2D code or bar code, use the InputData property (in text mode); to enter binary data to be encoded into a 2D code, use the InputDataA property (in text mode) or InputDataB property (in binary mode).

To the InputData property, you can assign ordinary printable data strings except codes assigned to 0x00, 0x81 to 0x9F, and 0xE0 to 0xFC.

To the InputDataA or InputDataB property, you can assign binary data. Note that if binary data contains any character code, you need to convert the character code into ASCII or Shift-JIS beforehand. Since the InputDataB property converts all data in the 8-bit Byte Mode of the QR Code, so the encoding efficiency is lower than that of the InputData or InputDataA property.

When encoding into a PDF417, Data Matrix, or MaxiCode image, the InputDataA and InputDataB properties will generate the same result.

NOTE: The current version of QRmaker Pro does not support encoding into a MaxiCode image from 0x00 assigned to the InputDataA or InputDataB.

24

Page 27: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

For details about the text mode and binary mode, refer to Section 6.3.11.

InputData InputDataA InputDataB

Restriction on character codes available

Yes partially (Codes assigned to 0x00, 0x81 to 0x9F, and 0xE0 to 0xFC are not available.)

No No

Character code Unicode ASCII or shift-JIS ASCII or shift-JIS Conversion mode Text mode Text mode Binary mode QR coding efficiency High High Low in some

cases Frequency of character mode switching

Restricted Restricted Not restricted

(Example 1) Entering text data Qrmaker1.InputData = "ABC123abc" 'Encode 13 bytes into a QR code Qrmaker1.Refresh() 'Update the current image 'if AutoRedraw = 0 (Example 2) Entering binary data Dim strBin as String ReDim Bdata(9) as Byte 'Reserve 10-byte area required for binary 'data entry Bdata(0) = &h81 'Can handle &h81 = 129 as data Bdata(1) = 240 Bdata(2) = 0 'Can handle 0 as data Bdata(3) = 49 .... Bdata(9) = 100 strBin = Bdata() 'Assign binary data to the variable 'for setting the property Qrmaker1.InputDataB = strBin 'Encode 10 bytes into a QR Code image Qrmaker1.Refresh() 'Refresh the image if AutoRedraw = 0

25

Page 28: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.3.11. TextOrBinary (1) Text mode taka

If a character string to be encoded is assigned to the InputData or InputDataA property, it is processed in the text mode in which QRmaker Pro will automatically switch the character mode between “Numerics mode”, “Alphanumeric Mode”, “8-bit Byte mode” and “Kanji Mode”, thus efficiently generating QR code images as small as possible.

(2) Binary mode If a data string to be encoded is assigned to the InputDataB property, it is processed in the binary mode in which QRmaker Pro will generate QR code images only in the 8-bit Byte Mode.

The encoding efficiency in binary mode is lower than that in text mode. The number of characters encoded per image in the binary mode is about 30% less than that in text mode for an alphanumeric character string, and about 60% less for a numeric character string.

6.3.12. Picture To show you how to use the Picture property, two program examples are given below. Example 3 is to output a picture image directly to your printer and Example 4 is to assign a picture image to the picture box control. (Example 3) Outputting a picture image directly to your printer by using the PaintPicture

Qrmaker1.AutoRedraw = 1 'Set the Auto Redraw mode on Qrmaker1.InputData = "This is to print a QR Code image." Printer.ScaleMode = 6 'in mm 'Print from the upper left at the location 'x = 2 and y = 4 cm Printer.PaintPicture Qrmaker1.Picture,20,40 Printer.EndDoc (Example 4) Assigning a picture image to the picture box control Qrmaker1.InputData = "This is to print a QR Code image." Qrmaker1.Refresh() 'Refresh the image if AutoRedraw = 0 Picture1.Picture = Qrmaker1.Picture 'Assign

26

Page 29: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.3.13. ForeBColor and ForeWColor (Foreground and background colors)

The ForeBColor and ForeWColor properties specify the foreground and background colors of a code image using the RGB function, respectively. The foreground color (black by default) applies to black cells or bars; the background color (white by default) applies to white cells, spaces or quiet zone.

RGB(r,g,b) := r + (g << 8) + (b << 16)

When a code image is drawn by the ActiveX control, pasted onto the Clipboard as a WMF or EMF, or saved as a WMF or EMF into a Disk file, it will be colored as specified by these properties. However, when it is saved as a BMP, PNG or TIFF into a Disk file, the property values will be ignored. The foreground and background colors are fixed to black and white, respectively.

The ForeWColor property plays a role different from the BackColor (one of the stock properties in Sections 6.4 and 6.5).

NOTE: When assigning colors other than defaults to the ForeBColor and ForeWColor properties, select such colors that contrast sharply with each other. If they do not contrast sharply, code images may be non-readable. Assigning white and black to the ForeBColor and ForeWColor properties, respectively, generates black/white reverse code images that can be read only by barcode/2D code readers that support the black/white reverse reading function.

27

Page 30: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.3.14. NumCell and NumRow The NumCell and NumRow properties return the number of cells and number of rows of a code image generated, respectively. These returned values are always based on the code image not rotated, independent of the rotation angle specified by the Rotate property.

NumCell NumRow

QR Code Number of cells per horizontal side

Number of cells per vertical side (= NumCell)

Bar codes Number of bars (including space bars)

1

MaxiCode 30 33 PDF417 Number of modules Number of rows Data Matrix Number of cells per horizontal

side Number of cells per vertical side

TIP: The size of a code image including quiet zones can be returned in mm by referring to the ImageHeight and ImageWidth properties. These returned values are based on the code image rotated by the Rotate property.

28

Page 31: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.3.15. Divide1 and Divide2 (Code Splitter) -- Encoding into split code images

QRmaker Pro can split data into a maximum of 16 blocks and encode each of them into a split code image to make the size of each code smaller. This feature is useful when the volume of data is too great to be encoded into a single code, when only a narrow rectangular print space is allowed, or when the barcode/2D code reader is limited in its reading ability to read code versions.

Barcode/2D code readers supporting the code splitter can read split code images and restore them to their original data string.

The Divide2 (denominator) and Divide1 (numerator) properties specify the number of splits and the ordinal ID number assigned to the nth split code of a 2D code, respectively. The selectable range for the numerator is from 1 to up to the value assigned to the denominator. If you attempt to decrease the denominator below the numerator, QRmaker Pro will automatically decrease the numerator to make it the same value as the denominator. Assigning 1 to the denominator will deactivate the code splitter.

Types of 2D codes

Main Sub Maximum

number of splitsSplitter check digit and

file ID*1

Model 1, 2 16 Yes QR Code

MicroQR -- *2 --

MaxiCode Mode 2, 3, 4, 5 *3 8 No

PDF417 Standard, Truncated, MicroPDF417

99*4 Yes

Data Matrix Square, Rectangular 16 Yes *1 Each split 2D code, except MaxiCode, contains a split check digit and file ID that are

calculated from all data in the original data string entered and eliminate misreads of split codes generated from different original data strings entered.

*2 MicroQR cannot be split according to its specifications.

*3 When splitting MaxiCode Mode 2 or 3, QRmaker Pro equally splits all data except a postal code, country code and service class into the specified number of blocks and adds these excluded codes to each split code.

*4 PDF417 can be split up to 99999 according to its specifications, but QRmaker Pro can split a PDF417 code up to 99.

NOTE: When creating n-split codes, do not change entered data string until encoding of 1/n to n/n split codes has completed.

NOTE: If the number of characters in text is less than the number of splits, QRmaker Pro cannot split the text data normally. Also, in some cases, QRmaker Pro cannot split data normally if the number of characters in text containing double-byte characters (e.g., Japanese Kanji) is less than twice the number of splits, since a double-byte character cannot be split into two. Also in the binary mode specified by the InputDataB property, splitting a double-byte character is prohibited.

When splitting text data, QRmaker Pro attempts to make the code version of split codes as close to the same as possible. If data volume in a split code borders on a larger version, however, the split code versions may not all be the same.

Generally, QRmaker Pro will roughly estimate how to split data, so it may not carry out an

29

Page 32: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

ideal splitting in some cases where text contains alphanumeric and double-byte characters (e.g., Japanese Kanji) requiring character mode switching.

NOTE: Split codes cannot be normally read by barcode/2D code readers that do not support the split code reading function.

30

Page 33: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.3.16. Mirror (Normal or mirror image for 2D codes) The Mirror property mirrors 2D code images.

Types of 2D codes Mirroring centerline If Mirror=0, Off (Normal image)

If Mirror=1, On (Mirror image)

QR Code Diagonal drawn from the left top to the right bottom

MaxiCode Vertical line passing through the center of a code image

PDF417 Vertical line passing through the center of a code image

DataMatrix Vertical line passing through the center of a code image

NOTE: Mirror images generated with the Mirror property being set to 1 can be read only by barcode/2D code readers that support the mirror image reading function.

6.3.17. QRversion The QRversion property sets the version number of a QR Code image to be generated.

With the specified version number, QRmaker Pro can generate a fixed-size QR Code image independent of the size of the text (number of bytes) entered. If the number of bytes in the text entered exceeds the one that can be contained in the specified version, a "Number of bytes exceeded" error will result.

The default is 0. By default, QRmaker Pro automatically selects the minimum QR Code version that is capable of containing text (bytes) entered. It is recommended that the default be preserved for generating easily readable QR Code images.

TIP: In the case of QR Code Model 2, for example, the version number can be set within the range from 1 to 40. The relationship between the QRversion and NumCell properties is as shown below.

NumCell = QRversion x 4 + 17

31

Page 34: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.3.18. InputData for MaxiCode (Mode 2 or 3) When entering text to the InputData property for MaxiCode mode 2 or 3, you should observe the following rules:

<postcode>,<country>,<service>,<data>

Fields should be delimited by a comma. The table below lists characters that can be used and the maximum number of digits in each field.

<postcode> <country> <service>

Usable characters

Max. number of digits

Usable characters

Max. number of digits

Usable characters

Max. number of digits

Mode 2 Numerals only 9 Numerals only

3 Numerals only

3

Mode 3 Upper-case alphabets and numerals

6 Numerals only

3 Numerals only

3

NOTE: If any character other than usable ones is given or the given data exceeds the maximum number of digits, the operation of QRmaker Pro is not assured.

NOTE: You may use the InputDataB property for entering text except Null characters (0x00).

6.3.19. PDF417Colum, PDF417Row and PDF417HWratio QRmaker Pro generates a PDF417 code image in the external shape specified by the PDF417Colum and PDF417Row properties if they are specified. If both of these properties are not set, the PDF417HWratio property takes effect so that QRmaker Pro uses an aspect ratio close to the PDF417HWratio property to generate a PDF417 code image.

In any case, the following restrictions have priority over the related properties specified so that the resulting code image may be different from one that is specified.

1 ≤ Column ≤ 30, 3 ≤ Row ≤ 90

The code image height (ImageHeight) is calculated using the following formula:

(PDF417XYratio x number of rows + quiet zone x 2) x CellPitch

In microPDF417 creation, only the PDF417Colum property is valid and its entry range is restricted to "1 ≤ Column ≤ 4." The PDF417Row will be ignored.

32

Page 35: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.3.20. ImageData (Black/white cell data or bar/space width data)

The ImageData property returns the black and white cell data of a 2D code image generated or the bar and space width data of a bar code image generated, in a hexadecimal code string. The former is produced by scanning cells of the 2D code image horizontally, row by row, starting from the left top and the latter, by scanning bars and spaces starting from the left end.

QR Code

The QR Code image sample given below is encoded from "12345678901234567890" with the specifications of QR Code Model 2 and error correction level M. The cell data of "21 (NumCell) x 21 (NumRow)" will be transformed into "3 bytes (Round up (21 bits/8) = Round up 2.625 = 3 bytes) x 21 rows," that is, 3 x 21 = 63 bytes, which will be returned as 126 hexadecimal codes.

The returned data sample below contains spaces and line feed codes for readability, but the actual data does not.

Cells will be scann

OTE: Data Matrix code images can be returned in the same format as QR Code images.

ed unidirectionally from left to right and mapped onto bytes from LSBs first.

7F CB 1F 41 4A 10 5D 5A 17 5D 55 17 5D 57 17 41 49 10 7F D5 1F 00 1F 00 D1 E9 13 B1 BF 06 C8 C8 14 A2 E5 1A 62 51 11 00 F3 1C 7F 97 04 41 1C 0B 5D ED 16 5D 98 1E 5D CE 01 41 64 0A 7F 75 1C

N

33

Page 36: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

PDF417

The PDF417 code image sample given below is encoded from "12345678901234567890" with the specifications of Standard model and error correction level 1. The data of "86 modules (NumCell) x 11 rows (NumRow)" will be transformed into "11 bytes (Round up (86 bits/8) = Round up 10.75 = 11 bytes) x 11 rows," that is, 11 x 11 = 121 bytes, which will be returned as 242 hexadecimal codes.

The returned data sample below contains spaces and line feed codes for readability, but the actual data does not.

Cells will be scanned unidirectionally from left to right and mapped onto bytes from LSBs first.

FF 2A AE 1C 54 10 B8 3A F0 17 25 FF 2A 7E 75 F4CB F8 CA F0 17 25 FF 2A 56 1F 7C 7B BA FA F1 1725 FF 2A EA FB 3C EA 59 EF F3 17 25 FF 2A AE 337C 33 5B 47 F0 17 25 FF 2A BE 0E 8D F6 7B BD F017 25 FF 2A CA 39 6C CE 29 77 F0 17 25 FF 2A EAC3 CC 7D 59 BF F7 17 25 FF 2A CA 3E B4 F1 58 F6F3 17 25 FF 2A 8A C1 2C 1A 28 C6 F0 17 25 FF 2A2E 37 4C 2E 58 4E F0 17 25

MaxiCode

The MaxiCode image sample given below is encoded from "12345678901234567890" with the specifications of Mode 4. The data of "30 modules (NumCell) x 33 rows (NumRow)" will be transformed into "4 bytes (Round up (NumCell 30 bits/8) = Round up 3.75 = 4 bytes) x 33 rows," that is, 4 x 33 = 132 bytes, which will be returned as 264 hexadecimal codes.

The returned data sample below contains spaces and line feed codes for readability, but the actual data does not.

Cells will be scanned unidirectionally from left to right and mapped onto bytes from LSBs first.

C0 AF AA 3A B5 0C 00 10 66 5C 55 35 AA AA AA 0A 00 00 00 20 55 55 55 15 AA AA AA 0A 00 00 00 10 55 55 55 35 AA 4F BC 1A 00 5B 09 20 55 05 5C 05 6A 06 88 0A 00 03 0C 10 55 03 70 05 AA 01 80 1A 00 01 10 10 15 01 50 05 6A 01 A8 0A 00 02 18 00 95 06 50 25 AA 01 9A 1A 00 16 0F 10 55 FC 6A 05 AA AA 4A 39 00 00 F0 1F 55 55 55 39 21 29 D3 1C 73 06 48 37 0B 28 64 1D 3A C5 32 1F A5 0F 3B 10 72 AC C6 16

34

Page 37: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Bar code EAN-13

The EAN-13 image sample given below is encoded from "123456789012." The total of 59 bars and spaces (NumCell) data will be returned as 118 hexadecimal codes. A single byte represents a single bar or space. If the MSB is 1, the byte represents a bar; if 0, it represents a space. Other remaining bits in each byte represent the multiple of a basic module.

In the case of two-width symbologies such as Code 39, a set of wide bar and space is represented by 2, and a set of narrow bar and space, by 1.

1 2 3 4 5 6 7 8 9 0 1 2 8

81 01 81 02 81 02 82 01 84 01 81 02 83 01 81 01 82 03 81 04 81 01 81 02 81 03 81 01 81 01 81 01 81 02 81 03 83 01 81 02 83 02 81 01 82 02 82 01 82 01 82 02 81 02 81 03 81 01 81

35

Page 38: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.3.21. Note for the setting order of properties If you do not set the following properties in the proper order, be aware that the resulting images created by QRmaker Pro may be different from the images you want.

(1) Setting the CodeType property first and then the ChkDigit property Set the CodeType property first. If you set the ChkDigit property preceding the CodeType property and the ChkDigit value is out of the range permitted for the specified code type, QRmaker Pro will automatically modify the preset ChkDigit value to the default (1).

(2) Setting the CellUnit property first and then the CellAdjust or CellPitch property Set the CellUnit property first. If you set or modify the CellAdjust or CellPitch property first and then CellUnit property, QRmaker Pro will automatically modify the preset CellAdjust or CellPitch value to preserve the original print image size.

(3) Divide1 and Divide2 properties When both the Divide1 and Divide2 properties are set to 1 by default (code splitter deactivated), assigning 2 to the Divide1 property to encode the second half of the entered data string will automatically change the Divide2 value to 2 (the same value as the Divide1 value).

This is because QRmaker Pro automatically modifies the Divide1 and Divide2 values in order to always keep the Divide1 value (numerator) even or less the Divide2 value (denominator).

(4) Setting the ModelNo property first and then the QRversion property Set the ModelNo property first. If you set or modify the QRversion property preceding the ModelNo property and the QRversion value is too large for the specified model number, QRmaker Pro will automatically modify the preset QRversion value to the default (0).

36

Page 39: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.4. List of Stock Properties The stock properties of QRmaker Pro are listed below.

Properties Type Default Read/Write Entry range Definition

BackColor OLE_COLOR

R/W Specifies/returns the background color.

Font LPFONTDISP

R/W Specifies/returns the font name of human-readable characters for bar codes.

hWnd long - R Returns the handle of QRmaker Pro.

6.5. Detailed Explanations of Stock Properties Properties Functions

BackColor Specifies/returns the background color that applies to the QRmaker Pro control window except a drawn code image and its quiet zone.

Font

Specifies/returns the font name of human-readable characters to be displayed below bar code images. If specified, the font size will be ignored since it will be determined in QRmaker Pro. The font attributes such as bold are fixed to the standard in QRmaker Pro and cannot be modified.

hWnd Returns the handle to identify what ActiveX or OLE control is active in your applications.

6.6. Default Properties Provided by Visual Basic Microsoft Visual Basic provides the following default properties: Draglcon, DragMode, Height, HelpContextID, Index, Left, Name, TabIndex, TabStop, Tag, Top, Visible, WhatsThisHelpID, and Width. For details, refer to the Visual Basic manuals.

37

Page 40: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.7. Trapping the Property Setting Errors Assigning any non-zero value to the ThrowError property will enable error trapping in developing your applications. At any of properties whose entry ranges are restricted, if you attempt to set a value out of the range, the ThrowError property returns an error.

If an error occurs at design time, an error dialog will appear. At run-time, an error event occurs. To trap errors at run-time, you need to write error handling routines using the ON ERROR GOTO statement in VB or the TRY or CATCH statement in VC++.

If you assign 0 to the ThrowError property to disable error trapping, assigning a value out of the range will be ignored or will reset the property value to its default. In this case, no property will issue errors, but QRmaker Pro may create code images according to property values different from those you have set. To avoid this, you need to recall the property values after setting them and check whether the current settings match yours.

Error code Message Property

1000 CellPitch ≥ 1 CellPitch

1001 ModelNo = 1 (Model1), 2 (Model2), 3, (MicroQR=3) ModelNo

1002 -CellPitch < CellAdjust < CellPitch CellAdjust

1003 QuietZone ≥ 0 QuietZone

1004 Rotate = 0, 1, 2, 3 0 = 0 deg, 1 = 90 deg, 2 = 180 deg, 3 = 270 deg

Rotate

1005 Ecc = 0-3 (Model1, 2), 0 (MicroQR M1), 0-1 (MicroQR M2, 3), 0-2 (MicroQR M4) (L=0, M=1, Q=2, H=3) EccLevel

1006 1 ≤ Divide1, 2 ≤ 16 Divide1, Divide2

1007 MicroQR cannot be split Divide1, Divide2

1008 0 ≤ CellUnit ≤ 2540 0 = Interpreted as 2540, -1 = Get default printer resolution

CellUnit

1009 1 ≤ BarHeight ≤ 1000 BarHeight

1010 ChrDisplay = 0, 1, 2 Human-readable characters: 0 = None, 1 = Yes, 2 = Yes (3 mm height)

ChrDisplay

1011 ChkDigit = 0, 1, 2 0 = None, 1 = Yes (1 digit), 2 = Yes (2 digits)

ChkDigit

1012

CodeType = 0-17 (0=QR, 1=EAN13, 2=EAN8, 3=UPCA, 4=UPCE, 5=Codabar, 6=ITF, 7=STF, 8=Code39, 9=Code93, 10=Code128, 11=EAN128, 12=MSI, 13=Code11, 14=Plessey, 15=MaxiCode, 16=PDF417, 17=DataMatrix)

CodeType

1013 2.0 ≤ NwRatio ≤ 3.0 NwRatio

1014 OptEANUPC = 0, 1 AddOn: 0 = No, 1 = Yes

OptEANUPC

1015 OptITF = 0, 1 Bearer bar: 0 = No, 1 = Yes

OptITF

1016 OptSTF = 0, 1 Start/Stop: 0 = Normal, 1 = Short

OptSTF

38

Page 41: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Error code Message Property

1017 OptCODE128 = 0, 1, 2 Code Set: 0 = A, 1 = B, 2 = C

OptCODE128

1018 OptPLESSEY = 0, 1, 2 0 = Dual scan, 1 = Single scan, 2 =Anker

OptPLESSEY

1019 QRversion = 0 (Auto), 1-14 (Model1), 1-40 (Model2), 1-4 (MicroQR) QRversion

1020 PDF417Ecc = 0 (Auto), 1 (2), 2 (4), 3 (8), 4 (16), 5 (32), 6 (64), 7 (128), 8 (256), 9 (512) PDF417Ecc

1021 PDF417Colum = 0 (Auto), 1-30 (PDF417), 1-4 (MicroPDF417) PDF417Colum

1022 PDF417Row = 0 (Auto), 3-90 (PDF417) PDF417Row

1023 PDF417XYratio = 1-10 PDF417XYratio

1024 PDF417HWratio = 1-7 1 = 8:1, 2 = 4:1, 3 = 2:1, 4 = 1:1, 5 = 1:2, 6 = 1:4, 7 = 1:8

PDF417HWratio

1025 MaxiCodeMode = 1 (Mode2), 2 (Mode3), 3 (Mode4), 4 (Mode5) MaxiCodeMode

1026 PDF417Model = 1 (Standard), 2 (Truncated), 3 (MicroPDF417) PDF417Model

1027 DmxModel = 1 (Square), 2 (Rectangular) DmxModel

39

Page 42: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

6.8. Image Encoding Status (by MakeStatus Property)

The MakeStatus property returns the current encoding status. The property value will be automatically updated when a new code image is created by calling any method (CreateQrMetaFile, DrawQrImage, QrImageCopy or Refresh) or with the AutoRedraw property set to any non-zero value.

MakeStatus returned value Meaning

0 Normal end

‐1 Too many characters defined

‐2 Too much switching between character modes (numeric, alphanumeric, binary, and double-byte character modes)

‐3 Invalid code splitter specification

‐4 Invalid code model number

‐5 File creation error

‐6 QRversion specification error

‐7 Invalid file format specification

‐8 Miscellaneous parameter setting errors

In MicroQR code creation, some combinations of the QRversion and EccLevel values will be interpreted as Invalid as listed below, resulting in an error (MakeStatus = -8).

Relationship between the QRversion and EccLevel Properties for MicroQR Code

QRversion EccLevel = 0 EccLevel = 1 EccLevel = 2 EccLevel = 3

1 OK Invalid Invalid Invalid 2 OK OK Invalid Invalid 3 OK OK Invalid Invalid 4 OK OK OK Invalid

In MicroPDF417 code creation just as MicroQR, specification of a value greater than 4 to the PDF417Colum property will result in an error (MakeStatus = -8).

40

Page 43: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Chapter 7. Methods 7.1. List of Methods

Listed below are methods available in QRmaker Pro ActiveX control.

Methods Type Arguments Type Definition

CreateQrMetaFile short

- Handle to the device context

- Filename - Format switch

HANDLE VARIANT short

Create a disk file.

DrawQrImage short

- Handle to the device context

- Horizontal coordinate (x) - Vertical coordinate (y)

HANDLE long long

Draw a code image on the selected device.

QrImageCopy short - Enhanced Metaswitch short Copy an image

onto the Clipboard.

Refresh void - None - Refresh the

current image.

7.2. Detailed Explanations of Methods [1] CreateQrMetaFile

Syntax short CreateQrMetaFile(HANDLE hDC, VARIANT fileName, short fSw) ent: hDC Device handle fileName Filename of destination file fSw = 0 Windows Metafile (WMF) = 1 Enhanced Metafile (EMF) = 2 Bitmap file (BMP) = 3 Portable Network Graphics file (PNG) = 4 Tiff file (TIF) rtn: >0 Number of cells per horizontal side in a normally created code image (=NumCell) =0 Code creation failed. Refer to the description of the MakeStatus property.

Description

This method saves a created code image with a filename specified by fileName on the selected disk drive in the Windows Metafile (WMF), Enhanced Metafile (EMF), or Bitmap file (BMP), Portable Network Graphics (PNG) or Tiff (TIF) format specified by fSw.

A WMF includes Aldus header information based on the Aldus Placeable Metafile, so you may insert the WMF as a picture into Microsoft Word95 documents.

An EMF cannot be inserted into Word95 documents as a picture, but can be inserted into any document created by Microsoft Office 97 or Office 2000 applications. When saving a created code image as an EMF, this method refers to the parameters of the default printer preset in the initializing sequence of QRmaker Pro, as reference device parameters.

The size of a created image saved as a BMP or PNG file is dependent on the number of dots

41

Page 44: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

set in the CellPitch property regardless of the CellUnit value.

The first parameter hDC is provided for ensuring the compatibility with the older versions. Specify a null.

(Example) QRmakerPro1.CreateQrMetaFile hDC, "c:\temp\test.wmf", 0

[2] DrawQrImage Syntax short DrawQrImage (HANDLE hDC, long x, long y) ent: hDC Device handle x Print position (Horizontal distance from the left margin) y Print position (Vertical distance from the top margin) rtn: >0 Number of cells per horizontal side in a normally created code image (=NumCell) =0 Code creation failed. Refer to the description of the MakeStatus property.

Description

This method draws a code image directly on the device specified by HANDLE. The HANDLE can be any of form (Form), picture box control (Picture), and printer (Printer) of Visual Basic. The unit of the coordinates (x, y) is device pixcel. (Example) Dim s As Integer, x As Integer, y As Integer With QRmakerPro1 S=.NumCell*.CellPitch*2.54/.CellUnit Printer.CurrentX=0 Printer.CurrentY=0 Printer.Print "Draw QR code directly x=5 Cm, y=3 Cm size="; Printer.Print s;" Cm" x=5000/2540*.CellUnit y=3000/2540*.CellUnit .DrawQrImage Printer.hDC, x, y Printer.EndDoc End With

42

Page 45: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

[3] QrImageCopy Syntax short QrImageCopy(short enhSw) ent: enhSw = 0 Windows Metafile (WMF) <>0 Enhanced Metafile (EMF) rtn: > 0 Number of cells per horizontal side in a normally created code image (=NumCell) = 0 Code creation failed. Refer to the description of the MakeStatus property.

Description

This method creates a code image in the WMF or EMF format and copies it onto the Clipboard.

When saving a created code image as an EMF, this method refers to the parameters of the default printer preset in the initializing sequence of QRmaker Pro, as reference device parameters. (Example) numCell=QRmakerPro1.QrImageCopy(0) '=0 WMF

[4] Refresh Syntax void Refresh() ent: rtn:

Description

This method updates the current code image when the AutoRedraw property is set to 0. It automatically updates the Picture property regardless of whether the control window displays or hides. (Example) QRmakerPro1.Refresh()

43

Page 46: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Chapter 8. Images Returned from QRmaker Pro

QRmaker Pro can return a code image to the following five objects:

Returns to: By: WMF EMF BMP PNG TIFF

1 Picture property Using the Picture property. √ ‐ ‐ ‐ ‐

2 Selected device Calling the DrawQrImage method to draw an image directly.

√ ‐ ‐ ‐ ‐

3 Clipboard Calling the QrImageCopy method. √ √ ‐ ‐ ‐

4 Control window Acting as .ocx control to draw an image directly. √ ‐ ‐ ‐ ‐

5 Disk file CreateQrMetaFile methodCalling the CreateQrMetaFile method.

√ √ √ √ √

For displaying a code image on the screen of your applications, you can use (1) through (4) above, but for printing it, you can use only (1) through (3).

An image returned in (1) is drawn on the logical coordinate so that you can assign it into the picture control box or use it as an argument to the PaintPicture property that draws an image directly.

You can directly draw an image returned in (2) by specifying the hDC (device context handle) of the form (Form) or picture box control (Picture) of Visual Basic. You may print it by specifying the hDC of the printer (Printer).

An image returned in (4) can be displayed in the control window on the form (Form), so you can print it from your applications, for example, in a report processing by Microsoft Access.

When printing an image returned as the Picture property or printing an image by transferring the printer handle, if a value assigned to the CellPitch property is different from the resolution of the actual print device, then QRmaker Pro will internally compensate the inconsistency by proportional interpolation or extrapolation. This calculation may involve some rounding errors so that the cell count in individual codes will not be constant. Even if the image looks normal, it will become difficult to read by some barcode/2D code readers.

This issue will prove troublesome when you print small codes by using low-resolution printers. Practically, if you want to assign less than 5 to the CellPitch property, do not forget this issue.

To avoid such a problem, you should assign the same value as your printer resolution to the CellUnit property and print out a created image as is without any modification such as reduction or enlargement.

44

Page 47: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Although the cell size is not constant due to mismatch between the CellPitch value and actual printer resolution as stated above, the size of the whole code image displayed or printed is almost "correct." The "correct" means that the displayed or printed code size is just as specified by the CellUnit, CellPitch, and CellAdjust properties.

The print size (side) of a QR code image is given by the following equation:

( )CellPitch NumCell + CellAdjust 25.4

CellUnit× ×

(mm)

The print size plus the quiet zone is given by the following equation:

( )CellPitch (NumCell + 2 QuietZone) + CellAdjust 25.4 CellUnit

× × ×

(mm)

45

Page 48: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Chapter 9. Correction for Cell Size and Bar Width

9.1. Making a Cell Size Correction (for QR Code, MaxiCode and Data Matrix)

The actual print size of a cell (which is a minimum drawing element) will differ depending upon the printer used. In many cases, it will deviate from the ideal size. When you use an ink jet printer that may print black fat, for example, it is recommended that a negative correction value be set to the CellAdjust property in order to make the printing result close to a 1:1 white and black cell size ratio.

The following three samples show correction results that are printed by the printer capable of printing with the ideal balance of 1:1 of white and black cells.

If no correction is made (CellAdjust = 0):

P

P

S

S

P: CellPitch=6

S: CellSize=6 =CellPitch+CellAdjust

If a negative correction is made (CellAdjust = -1):

P

P

S

S

P: CellPitch=6

S: CellSize=5 =CellPitch+CellAdjust

46

Page 49: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

If a positive correction is made (CellAdjust = 1):

P

P

S

S

P: CellPitch=6

S: CellSize=7 =CellPitch+CellAdjust

47

Page 50: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

9.2. Cell correction for closing up a gap between adjacent black cells

When making a negative correction, QRmaker Pro will automatically close up a gap between adjacent black cells in code images. This is useful to improve the readability for barcode/2D code readers and decrease the size of the metafile generated, making the print speed higher.

Shown at left below is an original pattern. Making a negative correction (setting a negative value to the CellAdjust) for the original pattern produces the result shown at right below.

Original pattern Negative correction and closing up ga between adjacent black cells

p

Actual print samples

No correction Negative correction Positive correction

48

Page 51: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

9.3. Making a Bar Width Correction (for bar codes and PDF417)

The bar width can be corrected by making a difference between the bar width and space width with the CellAdjust property. The CellAdjust value applies commonly to the narrow and wide bars/spaces.

The correction value range is from -(Bar width - 1) to (Bar width - 1). The correcting rule is to add half the correction value to the bar and remove the remaining half from the space so that the total width of bar and adjacent space will be kept constant. If an odd number is set to the CellAdjust property, however, the total width cannot be kept constant, so the overall width of the bar code will change.

Bar Width Correction and Resulting Bar Width Example (Bar width: 6 dots, Wide/Narrow ratio: 2.5) (Unit: dots)

Bar width correction value

-5 -4 -3 -2 -1 0 1 2 3 4 5

Narrow bar 3 4 4 5 5 6 7 7 8 8 9

Narrow space 8 8 7 7 6 6 6 5 5 4 4

Wide bar 12 13 13 14 14 15 16 16 17 17 18

Wide space 17 17 16 16 15 15 15 14 14 13 13

Actual print samples

No correction Negative correction Positive correction

1 2 3 4 1 2 3 4 1 2 3 4

49

Page 52: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Chapter 10. Using QRmaker Pro in Visual C++ Programming

This section describes how to use QRmaker Pro as an ActiveX control in VC++ 5.0 or VC++ 6.0.

- Create a new project by using the MFC AppWizard (exe).

- To insert the ActiveX control, create a dialog-box template. To use an MFC MDI/SDI application, specify a CformView class.

- Choose Project | Add to Project | Component and Control to open a component or control gallery. From the Registered ActiveX Controls, insert the QRmakerPro Control to the project with the Insertion button.

- Adding the ActiveX control to the project creates files (.cpp and .h) that provide CQRmaker Pro, CFont and CPicture classes.

- Use the resource editor and open the dialog created by AppWizard. From the control toolbar, choose the QRdrawPro icon and paste it to the dialog.

- Insert the ActiveX control following the class wizard to create the member function m_QRmakerPro that recognizes QRmaker Pro as an available ActiveX control in your Visual C++ program.

Given below are samples on how to use the properties and methods with the member function m_QRmaker.

50

Page 53: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

10.1. Assigning a Data String to the InputData Property

A sample coding given below produces a function that will be executed the moment a data string is entered into the Edit control box or the data string in the control box is modified. The function converts the data string to a data string composed by the Unicode character set, forms Variant type data, and assigns the converted string to the InputData property. void CTestOCX2View::OnChangeEditInputdata() { CString buf; CEdit* edit = (CEdit *)GetDlgItem(IDC_EDIT_INPUTDATA); edit->GetWindowText(buf); #if 1 //vc++6.0 USES_CONVERSION; #else int _convert; #endif CString tmp = A2W(buf); // Convert the current data string into Unicodes m_Qrmaker.SetInputData(COleVariant(tmp).Detach()); }

To use the function A2W() that converts a double-byte coded data string to a Unicode coded string, you need to add #include<afxpriv.h> line to the stdafx.h line.

10.2. Assigning a Data String (Binary) to the InputDataB Property

A sample coding given below assigns binary data to the InputDataB property as COleVariant type data.

The COleVariant variable should be created after the CByteArray type is created and initialized. CByteArray bary; // Create a 4-byte array (0x0c,0x00,0xff,0x22) for example. bary.Add(12); bary.Add(0); bary.Add(0xff); bary.Add(34); COleVariant vaTemp = COleVariant(bary).Detach(); Use the vaTemp as an argument to the InputDataB as follows. m_QRmaker.SetInputDataB(vaTemp);

Or create an COleVariant type directly from the CByteArray variable and set it to the property. This produces the same result as the vaTemp is used. m_QRmaker.SetInputDataB(COleVariant(bary).Detach());

TIP: Sample coding resulting in an abnormal end

51

Page 54: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Conversion from the CString to COleVariant type data cannot be used since some particular binary data (e.g., 0x00 and 0xEA) cannot be converted normally due to handling of null strings and Unicodes. CString tmp = CString( LPCTSTR lpch, int nLength ); // lpch and nLength represent pointer to the array and the length, respectively. COleVariant vaTemp = COleVariant(tmp).Detach();

10.3. Drawing and Saving an Image by the Picture Property

The description below gets the picture handle returned by .ocx and draws the image. CPicture pict = m_Qrmaker.GetPicture(); HMETAFILE hmf = NULL; int type = pict.GetType(); //Get the handle type int height = pict.GetHeight(); //HIMETRIC unit int width = pict.GetWidth(); //HIMETRIC unit //Determine the metafile handle from the CPicture type information if (type == PICTYPE_METAFILE) { //Ask if the picture is a metafile hmf = (HMETAFILE)pict.GetHandle(); CDC *pDC = GetDC(); int xLongPixPerInch = pDC->GetDeviceCaps(LOGPIXELSX); int yLongPixPerInch = pDC->GetDeviceCaps(LOGPIXELSY); pDC->SetMapMode(MM_ANISOTROPIC); pDC->SetWindowExt(width, -height); pDC->SetViewportExt(width * xLongPixPerInch / 2540, height * yLongPixPerInch / 2540); pDC->PlayMetaFile(hmf); //Draw picture ReleaseDC(pDC); //Never forget to add this line }

After saving the metafile handle hmf into the OnButtonXX() or similar property as a class variable obtained by the way stated above, if you attempt to use this hmf in the OnDraw() property, the hmf can be used normally in the front window but cannot be used normally in reactivated windows hidden once. This is because any metafile handle hmf which has come into an idle loop will be discarded. To avoid this, write all program lines within an OnDraw() property.

To get a metafile handle that will not be discarded even in an idle loop, that is, to save the Picture property for future reuse, use the CopyMetaFile() property to copy the metafile handle into the m_hmf variable obtained as a class variable. hmf = (HMETAFILE)pict.GetHandle(); if (m_hmf != NULL) DeleteMetaFile(m_hmf); //Delete the metafile m_hmf = CopyMetaFile(hmf, NULL); //Copy the metafile into a main memory area

Run this m_hmf on the OnDraw() property by using PlayMetaFile() property, then you can draw an image normally anytime.

52

Page 55: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

10.4. Drawing an Image by DrawQrImage Method The description below allows you to draw an image by using the DrawQrImage method. CClientDC dc(this); m_QRmaker.DrawQrImage((long)(dc.m_hDC), 0, 0);

10.5. Drawing an Image by Render() Property of Picture Holder Type

The description below gets a picture dispatch of .ocx. CPictureHolder m_pictHolder; CPicture pict = m_Qrmaker.GetPicture(); LPDISPATCH lpdisp = pict.m_lpDispatch; m_pictHolder.SetPictureDispatch((LPPICTUREDISP)lpdisp);

To get a set of parameters which defines the image size, describe as follows: int m_unit = m_Qrmaker.GetCellUnit(); int m_ncell = m_Qrmaker.GetNumCell(); int m_pitch = m_Qrmaker.GetCellPitch(); int m_height = pict.GetHeight(); //HIMETRIC unit int m_width = pict.GetWidth(); //HIMETRIC unit

Now, you can draw any image using the picture folder type variable obtained above. For the rect, define an image drawing area beforehand. CRect rect(ofsetX, ofsetY, newSize+ofsetX, newSize+ofsetY); m_pictHolder.Render(pDC, rect, rect);

To use the CPictureHolder property, you need to add a #include<afxctl.h> line to the stdafx.h file.

53

Page 56: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

10.6. Using the CreateQrMetaFile Method The description below creates a BMP file (test.bmp). m_QRmaker.CreateQrMetaFile(NULL,COleVariant("test.bmp").Detach(), 2);

A null can be set to the first parameter. The file name should be passed as a Variant type. The final parameter should be 0, 1 or 2 for WMF, EMF or BMP, respectively.

54

Page 57: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Chapter 11. Using QRmaker Pro with Microsoft Access

This chapter gives examples using QRmaker Pro with Microsoft 95 (basically the same as that with Access 97 or Access 2000).

When designing a form or report sheet with Access 95, you use QRmakerPro Control by choosing Insert | Custom Control to point QRmaker Pro control.

Access 95 will locate the QRmaker Pro window on the active form sheet as shown below.

Display the properties of the control where you click the Others or All tab, and you can refer to the properties of QRmaker Pro or modify their default values. Values requiring no change at run-time should be fixed here.

Shown below is a sample screen where you create or edit an ordering record and bill individual orders.

Examples below are for renaming the inserted control as QRmaker1.

55

Page 58: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

11.1. Source Code for Creating a Form Option Compare Database Option Explicit Private Sub Create_Click() QRmaker1.CodeType = 0 'QR Code QRmaker1.ModelNo = 2 'Model 2 QRmaker1.InputData = Me![Supplier] & "," & Me![ItemNo] & "," & Me![Qty] & "," & Me![Date] & "," & Me![Location] & "," QRmaker1.Refresh DoEvents 'Essential to code creation in succession End Sub Private Sub Form_Current() QRmaker1.CodeType = 0 'QR Code QRmaker1.ModelNo = 2 'Model 2 QRmaker1.CellUnit = -1 'Set the default printer resolution QRmaker1.InputData = Me![Supplier] & "," & Me![ItemNo] & "," & Me![Q'ty] & "," & Me![Date] & "," & Me![Location] & "," QRmaker1.Refresh DoEvents 'Essential to code creation in succession End Sub

11.2. Source Code for Creating a Report Option Compare Database Option Explicit Private Sub Details_Format(Cancel As Integer, FormatCount As Integer) QRmaker1.CodeType = 0 'QR Code QRmaker1.ModelNo = 2 'Model 2 QRmaker1.CellUnit = -1 'Essential to code creation in succession QRmaker1.CellPitch = 10 QRmaker1.InputData = Me![Supplier] & "," & Me![ItemNo] & "," & Me![Qty] & "," & Me![Date] & "," & Me![Location] & "," QRmaker1.Refresh DoEvents 'Essential to code creation in succession End Sub

In source code samples for creating a form or report given above, values are entered into the CodeType and ModelNo. If you do not need to change these values at run-time, however, the CodeType and ModelNo lines can be omitted by setting their default values to their properties in Design Mode.

56

Page 59: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Chapter 12. Creating Easily Readable 2D Codes Increase the CellPitch value (cell or module pitch) as much as possible. For efficient

operation of barcode/2D code readers, however, you need to take into consideration that created 2D code images, including their respective quiet zones, should lie within the reader's maximum readable area and allow for a sufficient margin.

To decrease the number of cells as much as possible,

- Use the text mode.

- Delete meaningless characters such as appended spaces from your data string.

- Use uppercase letters only for alphabet characters.

- Decrease the frequency of character mode switching by avoiding mixing numeric, alphanumeric, binary and other characters. Gather the same type of characters in one area.

- Lower the error correction level (ECC level) if you will use the 2D code system in circumstances where there is little chance of the labels getting dirty.

To the CellUnit property, set the same value as the resolution of the printer you use. Mismatch between the CellUnit value and the printer resolution will result in low-quality codes which are difficult to read by barcode/2D code readers. When saving a created code image as an Enhanced Metafile (EMF), it is essential to make the CellUnit value match the default printer resolution since QRmaker Pro refers to the parameters preset to the default printer as reference device parameters.

Adjust the cell correction value (CellAdjust) to match the printer characteristics so that the balance of black and white in a printed image comes as close as possible to a ratio of 1:1.

If you are copying and pasting a 2D code image via the Clipboard, output the image as is without any modification such as enlargement or reduction. Any modification may result in hard-to-read images.

Some applications will automatically enlarge or reduce pasted images, so be careful with the above issue about mismatches between the CellUnit value and printer resolution.

(Example) PowerPoint 95 will automatically reduce pasted images to 98.3% in size by default, so matching the printer resolution will become meaningless. To make printed codes easier to read, you need to change the image size to 100% by using the Scale command in the Draw menu.

Images pasted via the Clipboard into Word 95/97 documents may be edited by double-clicking. However, do not edit the picture but output it as is. Entering the picture edit mode will greatly change the cell size of the image, rendering the printed code hard to read by barcode/2D code readers.

57

Page 60: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Chapter 13. Specifications of 2D Codes 13.1. QR Code

QR Code is a two-dimensional matrix symbol that consists of square cells arranged in a square pattern. It is available in three models--Model 1, Model 2, and MicroQR. Model 1 and Model 2 have a position detection pattern (PDP) each in three corners, and MicroQR has it in one corner. The PDP allows barcode/2D code readers to quickly obtain the symbol size, position and tilt.

The QR Code symbology has four-level error correction capability and a wide range of symbol sizes is available.

To enable QR Code symbol images to be generated by a variety of technologies, the QR Code symbology allows the user to specify the cell size.

Model 1 has the original specifications, and Model 2 is an enhanced symbol featuring additional functions. Those models can be identified automatically by barcode/2D code readers. MicroQR has smaller space specifications, so it is suitable for smaller amounts of data.

Models

Model 1: Original specifications (Private standards. To be used in restricted fields)

Model 2: Enhanced specifications with improved position correction and large volume of data capacity

MicroQR: Small space specifications suitable for small amount of data

Encodable character sets

- Numeric data (0 to 9)

- Alphanumeric data (0 to 9, Uppercase A to Z, and nine special characters--space, $, %, *, +, -, ., /, and :)

- 8-bit byte data (JIS 8-bit character set (Latin and Kana) in accordance with JIS X0201)

- Kanji characters (Shift JIS values 8140h to 9FFCh and E040h to EAA4h shifted from JIS X0208)

Data and cell

A dark (black) cell is binary 1 and a light (white) cell is binary 0.

Symbol size (excluding quiet zone)

Model 1: 21 x 21 cells to 73 x 73 cells (Versions 1 to 14)

Model 2: 21 x 21 cells to 177 x 177 cells (Versions 1 to 40)

MicroQR: 11 x 11 cells to 17 x 17 cells (Versions M1 to M4)

For Model 1 and Model 2, each time the version increases by one, every side increases by four cells. For MicroQR, each time the version increases by one, every side increases by two cells.

58

Page 61: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Number of characters per symbol in the maximum size Model Max. version Cells/side Num

ericsAlphanumeric

s

Binary Kanji

Model 1 14 73 1167 707 486 299 Model 2 40 177 7089 4296 2953 1817 MicroQR M4 17 35 21 15 9

Model 1 in max. size (Ver. 14) Model 2 in max. size (Ver. 40) MicroQR in max. size (Ver. M4)

Error correction levels selectable

You may select the Reed-Solomon (RS) error correction level from the following four. The table below lists the maximum restorable rate in the total codewords. (Note that these rates are approximate values.)

In some cases, QR Code cannot be restored depending upon the location of dirtied or damaged area even if that area is less than the maximum restorable rate.

Error correction level L M Q H Max. restorable rate 7% 15% 25% 30%

NOTE: MicroQR does not support error correction level H. For MicroQR version M1 with error correction level L, error detection only is possible.

59

Page 62: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

13.2. MaxiCode MaxiCode is a two-dimensional, fixed-size matrix symbol that is made up of hexagonal modules arranged around a triple-circle finder pattern, in an offset 33 row x 30 column matrix.

The MaxiCode symbology has two-level error correction capability--Standard Error Correction (SEC) and Enhanced Error Correction (EEC). The module size is fixed.

Modes

Mode 2: SEC with numeric postal code (up to 9 digits in length), country code and service class

Mode 3: SEC with numeric postal code (up to 6 digits in length), country code and service class

Mode 4: SEC

Mode 5: EEC

Encodable character sets

- Numeric data (0 to 9)

- 8-bit byte data

Data and cell

A dark (black) cell is binary 1 and a light (white) cell is binary 0.

Symbol size (including quiet zone)

28.14 mm wide by 26.91 mm high

Number of characters per symbol Mode Postal code Country code Service class Numerics Alpha-

numerics Binary data

Kanji

Mode 2 9 (numerics) 3 (numerics) 3 (numerics) 126 84 56 28 Mode 3 6 (alpha-

numerics) 3 (numerics) 3 (numerics) 126 84 56 28

Mode 4 - - - 138 93 63 31 Mode 5 - - - 113 77 51 25

60

Page 63: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

13.3. PDF417 Standard model Truncated model microPDF417 model

PDF417 is a two-dimensional, multi-rowed, stacked symbol that consists of stacked codewords. Each codeword is a consecutive sequence of 4 bars and 4 spaces in a 17-module structure.

It is available in three models--standard, truncated, and microPDF417 models. The standard model has a start pattern and left-hand row indicator on the left, and a right-hand row indicator and stop pattern on the right. In the truncated model, the right row indicator is truncated. The microPDF417 model integrates the start pattern and left-hand row indicator into one and the stop pattern and right-hand row indictor into one for improved space efficiency.

The PDF417 symbology has 9-level error correction capability. It allows you to specify the number of rows and number of columns in order to change the aspect ratio.

To enable PDF417 symbol images to be generated by a variety of technologies, the PDF417 symbology allows the user to specify the module size.

Models

Standard: Original specifications with start and stop patterns and row indicators

Truncated: Simplified specifications with the right-hand row indicator truncated. This model should only be used when high-quality print of code images and a clean environment are assured.

microPDF417: Reduced space specifications with start and stop patterns integrated with their corresponding row indicator.

Encodable character sets

- Numeric data (0 to 9)

- Alphanumeric data

- 8-bit byte data

61

Page 64: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Data and cell

A dark (black) cell is binary 1 and a light (white) cell is binary 0.

Symbol size (excluding quiet zone) Minimum size Maximum size Model

No. of rows

No. of columns

No. of modules

No. of rows

No. of columns

No. of modules

Standard 3 1 86 90 30 579 Truncated 3 1 52 90 30 545 microPDF417 (Note 1) 1 38 44 4 99

(Note 1) 11, 8, 6, or 4 when the number of columns is 1, 2, 3, or 4, respectively.

Number of characters per symbol in the maximum size

Model Numerics Alphanumerics Binary data Kanji

Standard 2710 1850 1108 554

Truncated 2710 1850 1108 554

microPDF417 359 250 150 75

Error correction levels selectable

You may select the Reed-Solomon (RS) error correction level from nine levels.

62

Page 65: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

13.4. Data Matrix Square model Rectangular model

Data Matrix (DMX) is a two-dimensional matrix symbol that is made up of square cells arranged within a square or rectangular perimeter pattern. It has a distinct L-shaped, solid-line finder pattern and alternating-line timing pattern, which are used to define location, size and orientation of the symbol.

A wide range of symbol sizes is available. The Data Matrix symbology has an error correction capability which is determined according to the size (modules).

To enable Data Matrix symbol images to be generated by a variety of technologies, the Data Matrix symbology allows the user to specify the cell size.

Models

ECC200 Square: Model arranged within a square perimeter area ranging from 10 x 10 cells through 144 x 144 cells

ECC200 Rectangular: Model arranged within a rectangular perimeter area ranging from 8 x 18 cells through 16 x 48 cells

Encodable character sets

- Numeric data (0 to 9) Enter Special Char.

@1 FUNC1

@5 05macro

@6 06macro

@@ @

- Alphanumeric data

- 8-bit byte data

- FNC1

- 05 macro [ ] > RS05GS data RS EOT

- 06 macro [ ] > RS06GS data RS EOT

To enter special Data Matrix characters (FNC1, 05 Macro and 06 Macro), use an @ characters at the 1st character position as an escape code to form an @ escape sequence as defined below.

Note that FNC1, 05 Macro or 06 Macro should be placed at the 1st character position. (QRmaker Pro can support only FNC1 placed at the 1st character position, while FNC1 is allowed to be placed at the 1st or 2nd character position.)

63

Page 66: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Data and cell

A dark (black) cell is binary 1 and a light (white) cell is binary 0.

Symbol size (excluding quiet zone)

Minimum size Maximum size Model No. of

modules No. of blocks No. of

modules No. of blocks

Square 10 x 10 1 144 x 144 36 Rectangular 8 x 18 1 16 x 48 2

Number of characters per symbol in the maximum size Model Numerics Alphanumerics Binary data Kanji

Square 3116 2335 1555 777 Rectangular 98 72 47 23

64

Page 67: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Chapter 14. Specifications of Bar Codes 14.1. EAN (Product Codes)

EAN-13 EAN-8

1234567890128 12345670

Available characters are 0 to 9. For EAN-13 (EAN-8), if a character string you enter is shorter than 12 (7) digits, the string will be padded with trailing zeros up to a length of 12 (7) digits and then it will be followed by a check character at the 13th (8th) digit.

The check digit can be also shown in the human-readable characters.

EAN-13 with 2-digit add-on EAN-8 with 2-digit add-on

1234567890128 34 12345670 89

EAN-13 with 5-digit add-on EAN-8 with 5-digit add-on

1234567890128 34567 12345670 89012

If AddOn is specified (OptEANUPC property = 1), QRmaker Pro will create 2-digit or 5-digit Add-On codes when the entered string exceeds the basic length by up to 2 digits or by 3 to 5 digits, respectively. If the Add-On is shorten than 2 or 5 digits, it will be padded with trailing zeros up to a length of 2 or 5 digits, respectively.

65

Page 68: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

14.2. UPC UPC-A UPC-E

123456789012 1234565 Available characters are 0 to 9. For UPC-A (UPC-E), if a character string you enter is shorter than 11 (6) digits, the string will be padded with trailing zeros up to a length of 11 (6) digits and then it will be followed by a check character at the 12th (7th) digit. The check digit can be also shown in the human-readable characters.

UPC-A with 2-digit add-on UPC-E with 2-digit add-on

123456789012 1234565 78 UPC-A with 5-digit add-on UPC-E UPC-A with 5-digit add-on

123456789012 23456 1234565 78901

If AddOn is specified (OptEANUPC property = 1), QRmaker Pro will create 2-digit or 5-digit Add-On codes when the entered string exceeds the basic length by up to 2 digits or by 3 to 5 digits, respectively. If the Add-On is shorten than 2 or 5 digits, it will be padded with trailing zeros up to a length of 2 or 5 digits, respectively.

66

Page 69: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

14.3. Codabar (NW-7) Without a check digit With a check digit

A 1 2 3 4 5 6 7 8 9 0 A A 1 2 3 4 5 6 7 8 9 0 3 A

Available characters are 0 to 9, $, +, -, period (.), /, and colon (:). If you do not enter a start character (A, B, C, or D in upper or lower case), QRmaker Pro will automatically insert A at the leading position. If you do not enter a stop character (A, B, C, or D in upper or lower case), it will automatically add the same character as the leading character to the tail. If you specify a check digit, calculated data will be inserted immediately preceding the stop character. The check digit can be also shown in the human-readable characters.

The human-readable characters are shown in upper case.

The intercharacter gap can be varied from 1 through 10 modules.

67

Page 70: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

14.4. ITF (Interleaved 2 of 5) Standard

Without a check digit With a check digit

1 2 3 4 5 6 7 8 9 0 12 3 4 5 6 78 9 0 0 5

Shipping container code ITF (with bearer bar)

Without a check digit With a check digit

12345678 90123450 12345678 90123452

Available characters are 0 to 9. If no check digit is selected (ChkDigit property = 0) and the number of digits entered in text is odd, QRmaker Pro will add a numeral 0 to the tail. If a single check digit is selected (ChkDigit property = 1) and the number of digits entered is even, QRmaker Pro will add a numeral 0 and a check digit to the tail. This way, the number of digits will be always made even. The added zeros and check digits can be shown in the human-readable characters.

For a shipping container code with a bearer bar, QRmaker Pro draws a bearer bar with 5 times the narrow bar width surrounding the bar code so that the original bar height will not change but the width will widen by 10 times the width of module (a basic set of bar and space).

68

Page 71: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

14.5. STF (Standard 2 of 5) Normal start/stop

Without a check digit With a check digit

1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 5

Short start/stop

Without a check digit With a check digit

1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 5

Available characters are 0 to 9. The intercharacter gap is fixed at one module.

The added check digits can be shown in the human-readable characters.

69

Page 72: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

14.6. Code 39 Without a check digit With a check digit

* 1 2 3 4 5 6 7 8 9 0 * * 1 2 3 4 5 6 7 8 9 0 2 *

Available characters are 0 to 9, A to Z (a to z), space, $, %, +, -, period (.), and /. Even if you omit asterisks (start and stop characters), QRmaker Pro will automatically add them. If the ChkDigit property is set to 1, calculated data will be inserted immediately preceding the stop character.

The intercharacter gap is can be varied from 1 through 10 modules.

The human-readable characters are shown in upper case.

70

Page 73: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

14.7. Code 93 入力 特殊文字

@$  $

@%  %

@/  /

@+  +

@@ @

1 2 3 4 5 6 7 8 9 0

Available characters are 0 to 9, A to Z, -, period (.), space, $, /, +, and %.

To enter special Code 93 characters, use an @ character as an escape code to form an @ escape sequence as defined below. The human-readable characters show those escape sequences as is.

Entry Code 93 Entry Code 93 Entry Code 93 Entry Code 93 @%U NUL Space Space @%V @ @%W ` @$A SOH @/A ! A A @+A a @$B STX @/B " B B @+B b @$C ETX @/C # C C @+C c @$D EOT $ $ D D @+D d @$E ENQ % % E E @+E e @$F ACK @/F & F F @+F f @$G BEL @/G ' G G @+G g @$H BS @/H ( H H @+H h @$I HT @/I ) I I @+I I @$J LF @/J * J J @+J j @$K VT + + K K @+K k @$L FF @/L , L L @+L l @$M CR - - M M @+M m @$N SO . . N N @+N n @$O SI / / O O @+O o @$P DLE 0 0 P P @+P p @$Q DC1 1 1 Q Q @+Q q @$R DC2 2 2 R R @+R r @$S DC3 3 3 S S @+S s @$T DC4 4 4 T T @+T t @$U NAK 5 5 U U @+U u @$V SYN 6 6 V V @+V v @$W ETB 7 7 W W @+W w @$X CAN 8 8 X X @+X x @$Y EM 9 9 Y Y @+Y y @$Z SUB @/Z : Z Z @+Z z @%A ESC @%F ; @%K [ @%P { @%B FS @%G < @%L \ @%Q | @%C GS @%H = @%M ] @%R } @%D RS @%I > @%N ^ @%S ~ @%E US @%J ? @%O _ @%T DEL

71

Page 74: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

14.8. Code 128 Code Set A Code Set C

1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0

If Code Set C has been selected, discontinuing entry of 2-digit pairs will automatically switch to Code Set B. If Code Set A or B has been selected, however, entering a 2-digit pair will not switch to Code Set C. To switch to Code Set C, you need to enter @C.

To enter special Code 128 characters, use an @ character as an escape code to form an @ escape sequence as defined below. Those escape sequences (except @@) will not be shown in the human-readable characters.

To enter NUL, SOH, STX, …, US in Code Set A, type a, b, c, …, @D. They will not be shown in the human-readable characters.

Escape Sequences and Their Functions in Code Sets A, B and C Escape

sequences Code A Code B Code C Functions

@@ @ @ Enters an escape character @ itself. @1 FNC1 FNC1 FNC1 Function 1 @2 FNC2 FNC2 Function 2 @3 FNC3 FNC3 Function 3 @4 FNC4 FNC4 Function 4 @A Code A Code A Switches to Code Set A. @B Code B Code B Switches to Code Set B. @C Code C Code C Switches to Code Set C. @D US DEL US (0x1F) or Delete (0x7F) @S SHIFT SHIFT Character shift indicator

Characters Typed and Code Definition in Code Sets A and B (1) Entry Code A Code B Entry Code A Code B Entry Code A Code B

Sp Sp Sp 0 0 0 @@ @ @ ! ! ! 1 1 1 A A A " " " 2 2 2 B B B # # # 3 3 3 C C C $ $ $ 4 4 4 D D D % % % 5 5 5 E E E & & & 6 6 6 F F F ' ' ' 7 7 7 G G G ( ( ( 8 8 8 H H H ) ) ) 9 9 9 I I I * * * : : : J J J + + + ; ; ; K K K , , , < < < L L L - - - = = = M M M . . . > > > N N N / / / ? ? ? O O O

72

Page 75: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Characters Typed and Code Definition in Code Sets A and B (2) Entry Code A Code B Entry Code A Code B Entry Code A Code B

P P P ` NUL ` p DLE p Q Q Q a SOH a q DC1 q R R R b STX b r DC2 r S S S c ETX c s DC3 s T T T d EOT d t DC4 t U U U e ENQ e u NAK u V V V f ACK f v SYN v W W W g BEL g w ETB w X X X h BS h x CAN x Y Y Y i HT i y EM y Z Z Z j LF j z SUB z [ [ [ k VT k { ESC { \ \ \ l FF l | FS | ] ] ] m CR m } GS } ^ ^ ^ n SO n ~ RS ~ _ _ _ o SI o @D US DEL

73

Page 76: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

14.9. EAN-128 Code Set A Code Set C

1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 The description for Code 128 can apply to EAN-128 except for a trailing FNC1 inserted.

14.10. MSI Without a check digit

1 2 3 4 5 6 7 8 9 0

With a single check digit With double check digits

1 2 3 4 5 6 7 8 9 0 3 1 2 3 4 5 6 7 8 9 0 3 1

Available characters are 0 to 9. You may select no check digit, a single check digit, or double check digits. The check digit(s) can be shown in the human-readable characters.

14.11. Code 11 With a single check digit With double check digits

1 2 3 4 5 6 7 8 9 0 - 1 2 3 4 5 6 7 8 9 0 -

Available characters are 0 to 9 and -. The intercharacter gap is fixed at one module. You may select a single check digit or double check digits.

Neither start/stop characters nor check characters can be shown in the human-readable characters.

74

Page 77: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

14.12. PLESSEY/ANKER PLESSEY, bidirectional reading PLESSEY, unidirectional reading

1 2 3 4 A B C D E F C F 1 2 3 4 A B C D E F C F

ANKER

1 2 3 4 A B C D E F 3 0 Available characters are 0 to 9 and A to F. Double check digits are always attached. They can be shown in the human-readable characters.

75

Page 78: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Chapter 15. Compatibility with QRmaker 1.3x To use QRmaker Pro in applications developed with QRmaker 1.3x that can generate QR Code images only, you need to take the following actions:

(1) Add QRmaker Pro to the Windows Registry. (2) In a VB or VC++ development environment, remove the conventional OCX custom control

(QRmaker) from the form, insert or paste "QRmakerPro" instead, and then give it the same name as the old ocx.

(3) Set 0 (QR Code) to the CodeType property. This assures the upward compatibility since other properties have no relation with QR Code creation.

15.1. Properties Newly Added to QRmaker Pro New properties Designed for: Function

BarChrGap Bar codes Sets the intercharacter gap for Codabar and Code 39.

BarHeight Bar codes Sets the bar code height (mm).

ChkDigit Bar codes Specifies whether or not to add a check digit(s) to bar code data.

ChrDisplay Bar codes Specifies whether or not to display human-readable character string below bar codes.

CodeType 2D codes and bar codes Specifies the code type.

DmxModel Data Matrix Specifies the Data Matrix model.

ImageData 2D codes and bar codes Returns the black/white cell data or bar width data scanned, in hexadecimal format.

ImageHeight 2D codes and bar codes Returns the height of an image generated, in mm.

ImageWidth 2D codes and bar codes Returns the width of an image generated, in mm.

InputDataA 2D codes and bar codes Sets a binary data string to be encoded into a 2D code in text mode.

MaxiMode MaxiCode Specifies the MaxiCode mode.

NumRow 2D codes and bar codes Returns the number of cells per vertical side in a code generated.

NwRatio Bar codes Specifies the ratio of a wide bar (space) and narrow bar (space) for two-width symbologies.

OptEANUPC Bar codes (EAN, UPC) Specifies whether or not to create AddOn codes.

OptITF Bar code (ITF) Specifies whether or not to add a bearer bar.

OptSTF Bar code (STF) Specifies start/stop characters.

OptCODE128 Bar codes (Code 128, EAN128) Specifies the code set--A, B or C.

OptPLESSEY Bar codes Specifies the Plessey/Anker type.

PDF417Colum PDF417 Sets the number of columns. (0 = Auto)

PDF417Ecc PDF417 Sets the error correction level.

PDF417HWratio PDF417 Sets the aspect ratio (height/width rate).

76

Page 79: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

New properties Designed for: Function

PDF417Model PDF417 Specifies the PDF416 model.

PDF417Row PDF417 Sets the number of rows.

PDF417XYratio PDF417 Sets the total height of rows.

QRversion QR Code Sets the QR Code version number.

15.2. Enhanced Property--CellUnit Assigning -1 to the CellUnit property sets the resolution of the default printer. Using this function at the start of an application allows you to get the resolution of the printer that has been set, enabling QRmaker Pro to create suitable code images.

15.3. Enhanced Method--CreateQrMetaFile The CreateQrMetaFile method can save a created code image in the PNG or TIFF format in addition to the WMF, EMF and BMP formats.

77

Page 80: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

Chapter 16. Frequently Asked Questions (FAQ) Q1: When you paste a code image created with QRmaker Pro into the VB billing tool

"ActiveReport," there are gaps between black cells in the image.

A1: This occurs because the ActiveReport does not support a Windows Metafile (WMF).

The ActiveReport will convert the image generated with the specified printer resolution to one that is drawn with the screen resolution.

In Windows NT 4.0, you can avoid the problem with the following ways: 1. Paste the QRmaker Pro control to the Form. After that, set the Visible property to

"Enable." 2. After setting necessary parameters, use the method as QrImageCopy(1) to copy the

Enhanced Metafile (EMF) to the Clipboard. 3. Use the method ClipBoard.GetData to get the EMF image into the Form or Picture box

and print the image.

In Windows 95/98, this problem cannot be avoided even with the above procedure. To avoid it, create a BMP file and use LoadPicture to load it to the PictureBox control. Note that take into account the relationship between the resolution specification and image size and the difference between the image size displayed on the screen and one that is printed by the printer.

Q2: When you use the printer with the vertical and horizontal resolutions different, which resolution should be set to the CellUnit property?

A2: Set the lower resolution.

If you use the printer with the 720 x 360 resolution (X x Y), for example, set 360 to the CellUnit property. If the higher one is set, a rounding error will become larger in calculation of the CellPitch and CellAdjust values when you select any low resolution in actual code creation.

78

Page 81: Active X Control for Generating 2D Code and Bar Code Images …read.pudn.com/downloads543/doc/2243772/QRmakerPro_Users_ma… · QRmaker Pro Trial 1.1.13 Chapter 3. PC Requirements

QRmaker Pro Trial 1.1.13

QRmaker Pro User's Manual

First Edition, June 2004

DENSO WAVE INCORPORATED

The purpose of this manual is to provide accurate information in the handling and operating of QRmaker Pro. Please feel free to send your comments regarding any errors or omissions you may have found, or any suggestions you may have for generally improving the manual.

In no event will DENSO WAVE be liable for any direct or indirect damages resulting from the application of the information in this manual.

Windows 95,Windows 98,Windows Me,Windows NT4.0,Windows 2000,Visual Basic,Visual C++,Visual Studio,Office 95,Office 97,Office 2000,Access 95,Access 97,Access 2000are registered trademarks or trademarks of Microsoft Corporation in the U.S. and/or other countries.

79


Recommended