Sample code for 30+ languages & platforms
Java 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 Java Downloads

Chilkat2 Java
import com.chilkatsoft.chilkat2.ChilkatException;
import com.chilkatsoft.chilkat2.Formats;
import com.chilkatsoft.chilkat2.JsonObject;

public class ChilkatExample {

    public static void main(String[] args) {
        // This example requires the Chilkat API to have been previously unlocked.
        // See Global Unlock Sample for sample code.

        JsonObject json = new JsonObject();
        Formats fmt = new Formats();
        JsonObject jsonOut = new JsonObject();
        try {
            fmt.qrCode("capabilities", json, jsonOut);
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
            return;
        }

        System.out.println("Chilkat version: " + jsonOut.stringOf("productVersion"));
        System.out.println("symbology: " + jsonOut.stringOf("symbologies[0].id"));
        System.out.println("QR versions: " + jsonOut.intOf("symbologies[0].encoding.version.min") + " to " + jsonOut.intOf("symbologies[0].encoding.version.max"));
        System.out.println("structured append, most symbols: " + jsonOut.intOf("symbologies[0].structuredAppend.maxSymbols"));

        int n = jsonOut.sizeOfArray("symbologies[0].encoding.errorCorrection");
        for (int i = 0; i < n; i++) {
            jsonOut.setI(i);
            System.out.println("error correction: " + jsonOut.stringOf("symbologies[0].encoding.errorCorrection[i]"));
        }

        // The operations this version implements.
        n = jsonOut.sizeOfArray("operations");
        for (int i = 0; i < n; i++) {
            jsonOut.setI(i);
            if (jsonOut.boolOf("operations[i].available")) {
                System.out.println("operation: " + jsonOut.stringOf("operations[i].name"));
            }
        }

        n = jsonOut.sizeOfArray("imageFormats.output");
        for (int i = 0; i < n; i++) {
            jsonOut.setI(i);
            System.out.println("image format: " + jsonOut.stringOf("imageFormats.output[i]"));
        }

        System.out.println("default timeout: " + jsonOut.intOf("limits.timeoutMs.default") + " ms");
        System.out.println("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
    }
}