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

Embed a QR Code in HTML as a Data URI

See more QR Code Examples

Demonstrates putting a QR code directly into an HTML page or HTML email with no separate image file. The base64 PNG returned by QrCode becomes the src of an img tag as a data URI, which is the MIME type from outputs[0].mimeType followed by the base64 from outputs[0].base64.

Chilkat B4X Downloads

B4X
Dim success As Boolean = False

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

Dim json As ChilkatJsonObject
json.Initialize
json.UpdateString("payload.text", "https://www.chilkatsoft.com/")
json.UpdateInt("render.moduleSize", 5)

Dim fmt As ChilkatFormats
fmt.Initialize
Dim jsonOut As ChilkatJsonObject
jsonOut.Initialize
success = fmt.QrCode("generate", json, jsonOut)
If success = False Then
    Log(fmt.LastErrorText)
    Return
End If


'  A data URI has the form  data:<MIME type>;base64,<base64 data>
Dim sbHtml As ChilkatStringBuilder
sbHtml.Initialize
sbHtml.Append("<html><body><p>Scan to visit chilkatsoft.com</p><img alt=" & Chr(34) & "QR code" & Chr(34) & " width=" & Chr(34))
sbHtml.AppendInt(jsonOut.IntOf("outputs[0].width"))
sbHtml.Append(Chr(34) & " height=" & Chr(34))
sbHtml.AppendInt(jsonOut.IntOf("outputs[0].height"))
sbHtml.Append(Chr(34) & " src=" & Chr(34) & "data:")
sbHtml.Append(jsonOut.StringOf("outputs[0].mimeType"))
sbHtml.Append(";base64,")
sbHtml.Append(jsonOut.StringOf("outputs[0].base64"))
sbHtml.Append(Chr(34) & "></body></html>")

success = sbHtml.WriteFile("qa_output/qr_page.html", "utf-8", False)
If success = False Then
    Log(sbHtml.LastErrorText)
    Return
End If


Log("image: " & jsonOut.IntOf("outputs[0].width") & " x " & jsonOut.IntOf("outputs[0].height") & " pixels")
Log("HTML length: " & sbHtml.Length)

'  The page, as a browser shows it:

'  image

'  Sample output:

'  image: 185 x 185 pixels
'  HTML length: 1211