Sample code for 30+ languages & platforms
.NET Core C# 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.

Chilkat .NET Core C# Downloads

.NET Core C#
bool success = false;

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

Chilkat.JsonObject json = new Chilkat.JsonObject();
Chilkat.Formats fmt = new Chilkat.Formats();
Chilkat.JsonObject jsonOut = new Chilkat.JsonObject();
success = fmt.QrCode("capabilities",json,jsonOut);
if (success == false) {
    Debug.WriteLine(fmt.LastErrorText);
    return;
}

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

int i;
int n;
n = jsonOut.SizeOfArray("symbologies[0].encoding.errorCorrection");
for (i = 0; i <= n - 1; i++) {
    jsonOut.I = i;
    Debug.WriteLine("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) {
        Debug.WriteLine("operation: " + jsonOut.StringOf("operations[i].name"));
    }

}

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

Debug.WriteLine("default timeout: " + Convert.ToString(jsonOut.IntOf("limits.timeoutMs.default")) + " ms");
Debug.WriteLine("default largest image: " + Convert.ToString(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