QR-Code Font and Encoder User Manual
QR-Code Implementation Options
Several graphic and font encoders are provided. The font encoders will
generate a text string that will create a QR-Code symbol when combined with
Universal 2D Font. In the event the QR font and graphic encoders provided are not supported
in the desired application, other implementation options are available:
- QR-Code may be printed on an unsupported system by using a font
encoder to populate a database with the "text string to print"
and by accessing the database from the other system with the QR-Code
- The source code for any single encoder will be supplied with
the purchase of the Unlimited Developer License and a signed
source code license agreement.
Extract the files provided with the product and run the installation
executable, which will install the following components:
QR-Code Font Encoder Application - provides an easy method for users
to create QR-Code barcodes and paste them into other applications.
QR-Code Image Generator Application - an
easy-to-use application that generates QR-Codes as a single windows metafile (WMF)
Universal 2D fonts - used to create QR-Code symbols in addition
to other 2D barcodes.
Formula - allows
barcode generation in Crystal Reports versions 9 and above.
- Windows DLLs - are installed
in the appropriate System folder and are registered by the installation
program for COM Interop.
- Examples are
FileMaker Pro, Excel, Word mail-merge,
Crystal Reports and
There are two implementation options for Microsoft Access, the
ActiveX Control graphic encoder and the
font encoder. Both methods are implemented in the integration\Examples
folder of the package.
There are multiple implementation options for Microsoft Excel. To display the
ActiveX Control in Excel as a graphic object, refer to the
ActiveX Tutorial. To use Excel as a data source for a Word Mail Merge, refer
to the Word Mail Merge Tutorial.
also be generated and displayed directly within Excel spreadsheets by
2D XLS Font. This is the most efficient method to use when multiple barcodes
must be generated. A working example is provided in the
\Integration\Examples\Excel Example.xls file included
with the install package. The data that is formatted for the font will not stack or look correct until
the cells are formatted for multiple lines, as described in the
2D XLS font documentation. The required VBA module is provided in the
Integration\Excel & Access VBA
folder of the product zip file.
QR-Code barcodes may be created in a Word mail-merge with the included
ActiveX Control as a graphic object, or as a
encoder with Excel as the data source. A working example is provided in the
\Integration\Examples\Word Mail-Merge.doc file included
with the install package.
OpenOffice for Windows
be generated within OpenOffice applications that support VB scripting. A working
Calc example is provided in the
file included with the install package. The required VB module is provided in the
folder of the product zip file. Use the
Encoder Tutorial with the VB module within the package.
There is no direct method of generating QR-Codes in Adobe InDesign.
However, Excel may be utilized to encode
the data and then that data may be imported into InDesign where the
appropriate font is applied to generate an accurate QR Code barcode.
IDAutomation's QRCode Barcode may be easily integrated into FileMaker
using dynamic calculated fields without the use of scripts with the
FileMaker Plugin. The plugin is provided in the zip file of the purchased version only. View
step-by-step instructions about installing, registering and using the plugin in FileMaker.
meCard database example is provided in the
within the install package.
Implementation of QR-Code in .NET applications may be accomplished
with graphic or font encoders. Integration into ASP.NET and other web
applications is best implemented as a graphic encoder with the ASP.NET
Server Control provided in the Advantage Package. Information about
printing from the .NET Forms
Control without using the font
is provided in the
.NET Forms Control Manual.
- The following example uses the font encoder to create
the text string that will generate an accurate QR Code barcode
when printed with the
Universal 2D barcode font:
- In a .NET project, add a reference to the DLL and place
the import statement in the declarations section of the
- Acquire the special text string that will generate a
readable QR Code when combined with the IDAutomation2D font:
Dim NewBarcode As New QRCodeBarcode
TextBox2.Text = NewBarcode.FontEncode(TextBox1.Text, True, QRCodeBarcode.EncodingModes.Byte,
- In a .NET project, add a reference to the DLL and place the using statement
in the declarations section of the project. For example:
- Obtain the string of data, that when printed with the
IDAutomation2D Font, will create a correct symbol:
QRCodeBarcode NewBarcode = new QRCodeBarcode();
textBox1.Text = NewBarcode.FontEncode(textBox1.Text, false, EncodingModes.Alphanumeric,
The Windows COM DLL Font Encoder
Install the Font and Encoder for Windows by running the .exe file
provided in the package to install TrueType fonts, implementation examples
and register the COM DLL. After the DLL is installed and registered,
it may be accessed by any application that can retrieve a text string
or graphic object from a COM DLL.
The FontEncode method is used to convert the data to encode
into a string that will generate a QR barcode when combined with the
2D font. The Excel implementation provides a good example
of using the COM DLL. VB and VBA scripting modules making use of the QR-Code COM
object are provided in the
folder of the product ZIP file.
COM DLL ProgID: IDAuto.QRCode
'Initialize COM DLL
Dim QRFontEncoder As QRCodeFontEncoder
Set QRFontEncoder = New QRCodeFontEncoder
PrintableBarcodeString = Result
Generating QR Codes with Java Class Integration
The Java class file was compiled with the Sun JDK 1.3 and is compatible
with Windows, Mac, UNIX, Linux and any other systems supporting Java.
Copy the IDAutomation_JavaFontEncoder_QRCode.jar file from the "Java
Class Encoder" folder to the system's classpath. Consult the
Java documentation or the company that provides the Java virtual machine
Integrate the FontEncode Method
After the directories are copied to the classpath root, the
method to format data to the font can then be called from a
method in a Java application as in this example:
public static void main ( String  args )
String dataToEncode = "QRCode Test";
QRCodeEncoder qre=new QRCodeEncoder();
String DataToEncode = "IDAutmation Inc.";
boolean ApplyTilde = false;
int EncodingMode = 0;
int Version = 0;
int ErrorCorrectionLevel = 0;
System.out.println( qre.FontEncode(DataToEncode, ApplyTilde, EncodingMode,
Version, ErrorCorrectionLevel) );
The data string returned by the fontEncode method
will create a proper QR Code when printed with the 2D font.
To install the font on an operating system, consult the
OS documentation or follow IDAutomation's
font installation procedures.
C++ .H Header File
The C++ header file is provided with the purchase
of a Developer License or greater.
The header file is unobfuscated C++ source code that makes use of character
vectors. It was compiled and tested with Visual Studio 2005 and does
not contain any OS-specific code. The QRCodeFontEncoder class
may be used to return an encoded string that the IDAutomation 2D font
can be applied to, in order to create QR-Code symbols. This class also
contains several properties and enumerations
that adjust the resulting symbol size and encoding method. Following
is a C++ Implementation example:
int main ()
QR.ApplyTilde = true;
QR.ErrorCorrectionLevel = QR.ECL_M;
QR.EncodingMode = QR.Enc_Byte;
QR.Version = QR.V_07;
QR.DataToEncode = "IDAutomation.com";
XML/BI Publisher Integration
While IDAutomation does not support integration with BI Publisher,
Oracle Developer Tim Dexter has written a blog about integrating
QR-Code Barcodes with XML Publisher.
is used in this package to create QR-Code symbols and is included in several
formats including TrueType, PostScript, OpenType and PCL. To obtain all the
download the latest IDAutomation2D Font package.
Back to Top