B4X Requires Chilkat v11.7.0+
B4X
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
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:
'
' Sample output:
' image: 185 x 185 pixels
' HTML length: 1211