Encoded images is to wrap into html img tags.
Code: Select all
file$ = OpenFileRequester("Select a file","","Images (BMP,GIF,JPG,ICO,PNG) | *.bmp;*.gif;*.jpg;*.jpeg;*.png;*.ico",0)
If file$
If ReadFile(0, file$)
length = Lof(0)
*MemoryID = AllocateMemory(length)
If *MemoryID
bytes = ReadData(0, *MemoryID, length)
EndIf
CloseFile(0)
Extension$ = GetExtensionPart(file$)
Else
End
EndIf
Else
End
EndIf
Size = length * 1.35
If Size < 64
Size = 64
EndIf
*EncodeBuffer = AllocateMemory(Size)
Size = Base64EncoderBuffer(*MemoryID, length, *EncodeBuffer, MemorySize(*EncodeBuffer))
Encoded$ = PeekS(*EncodeBuffer, Size, #PB_Ascii)
Debug Encoded$
testHTML$+ "<html>"+ #CRLF$ +
"<head>"+ #CRLF$ +
"<title>BaseImage</title>"+ #CRLF$+
"</head>"+ #CRLF$+
"<body bgcolor='FFFFFF' text='#000000'>"+ #CRLF$+
"<h1>BaseImage Demo</h1>"+ #CRLF$+
"<h2>Created With PureBasic v.5.6x </h2>"+ #CRLF$+
"<br /><br />"+ #CRLF$+
"<img src='Data:image/"+Extension$+";base64," +Encoded$ + "' />"+ #CRLF$+
"<h3>Base 64 encoded image file wrapped in image tags</h3>"+ #CRLF$+
"<br />"+ #CRLF$+
"</body>"+ #CRLF$+
"</html>"
CreateFile(0,GetTemporaryDirectory()+"testB64.html")
WriteString(0,testHTML$)
CloseFile(0)
RunProgram(GetTemporaryDirectory()+"testB64.html")