Sample code for 30+ languages & platforms
JavaScript Requires Chilkat v11.7.0+

Get the QR Code Capabilities of the Chilkat Version in Use

See more QR Code Examples

Demonstrates the capabilities operation, which describes what the installed version of Chilkat can do: the range of QR versions, the error-correction levels, the operations, the image formats and the limits. A program can check for a feature here instead of testing for a Chilkat version number. The request can be an empty JSON object.
Note
This example is intended for running within a Chilkat.Js embedded JavaScript engine. All Chilkat JavaScript examples require Chilkat v11.4.0 or greater.
JavaScript
var success = false;

//  This example requires the Chilkat API to have been previously unlocked.
//  See Global Unlock Sample for sample code.

var json = new CkJsonObject();
var fmt = new CkFormats();
var jsonOut = new CkJsonObject();
success = fmt.QrCode("capabilities",json,jsonOut);
if (success == false) {
    console.log(fmt.LastErrorText);
    return;
}

console.log("Chilkat version: " + jsonOut.StringOf("productVersion"));
console.log("symbology: " + jsonOut.StringOf("symbologies[0].id"));
console.log("QR versions: " + jsonOut.IntOf("symbologies[0].encoding.version.min") + " to " + jsonOut.IntOf("symbologies[0].encoding.version.max"));
console.log("structured append, most symbols: " + jsonOut.IntOf("symbologies[0].structuredAppend.maxSymbols"));

var i;
var n;
n = jsonOut.SizeOfArray("symbologies[0].encoding.errorCorrection");
for (i = 0; i <= n - 1; i++) {
    jsonOut.I = i;
    console.log("error correction: " + jsonOut.StringOf("symbologies[0].encoding.errorCorrection[i]"));
}

//  The operations this version implements.
n = jsonOut.SizeOfArray("operations");
for (i = 0; i <= n - 1; i++) {
    jsonOut.I = i;
    if (jsonOut.BoolOf("operations[i].available") == true) {
        console.log("operation: " + jsonOut.StringOf("operations[i].name"));
    }

}

n = jsonOut.SizeOfArray("imageFormats.output");
for (i = 0; i <= n - 1; i++) {
    jsonOut.I = i;
    console.log("image format: " + jsonOut.StringOf("imageFormats.output[i]"));
}

console.log("default timeout: " + jsonOut.IntOf("limits.timeoutMs.default") + " ms");
console.log("default largest image: " + jsonOut.IntOf("limits.maxPixels.default") + " pixels");

//  Sample output:

//  Chilkat version: 11.7.0
//  symbology: qr
//  QR versions: 1 to 40
//  structured append, most symbols: 16
//  error correction: auto
//  error correction: L
//  error correction: M
//  error correction: Q
//  error correction: H
//  operation: generate
//  operation: measure
//  operation: validate
//  operation: capabilities
//  image format: png
//  image format: svg
//  default timeout: 10000 ms
//  default largest image: 16777216 pixels