Disociate an image and text from a base64 encoded string - base64

I'm coding an API in ASP.NET that receives base64 encoded string to parse them into a DB. My problem is the following : these strings contain both an image and some text following it and I cannot find a way to separate them to then process he text part. Of course I have no possibility of changing the format.. So I was wondering if someone had an idea or a tool to detect the begining and end of the image and the text parts?
Here is a sample :
HShIBgAwMEFCQ0QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABs9ARtAHWH_G1IAG00AG1QAHVC0tB0oSgIAAQEdKEoCAAIBHShKAgADARtwADL_G2EBHVza_x0oTPoPMHAwAQExQAFmAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAf_AAAAAAAf4AAAAAAAAAAAAAAAAAAAAAAAB______-D___8AAAAAB___AAAAAB__8AAAAAAAAAAAAAAAAAAAAAAAf______g_____gAAAB___-AAAAD___wAAD_8AAAf_gAAAAAAAAAAAH______4P_____AAAB____4AAAD____AAA__AAAH_4AAAAAAAAAAAB______-D_____8AAB_____AAAD____8AAP_4AAB_-AAAAAAAAAAAAf______g______wAA_____4AAB_____gAD__AAAf_gAAAAAAAAAAAH______4P_____-AAf_____gAA_____8AA__wAAH_4AAAAAAAAAAAB______-D______wAP_____4AAf_____wAP_-AAB_-AAAAAAAAAAAAf______g______-AD______AAP_____8AD__gAAf_gAAAAAAAAAAAH______4P______wB______4AH______gA__8AAH_4AAAAAAAAAAAB______-D______-A__4AP_-AD__8D__8AP__gAB_-AAAAAAAAAAAAf_gAAAAA__AAf__wP_4AA__wA__4AH__gD__4AAf_gAAAAAAAAAAAH_4AAAAAP_wAAf_8D_8AAH_8Af_4AAf_4A___AAH_4AAAAAAAAAAAB_-AAAAAD_8AAB__g_-AAA__AP_8AAD__AP__wAB_-AAAAAAAAAAAAf_gAAAAA__AAAP_4f_gAAP_wD_-AAAf_wD__-AAf_gAAAAAAAAAAAH_4AAAAAP_wAAB_-H_4AAB_-A__AAAD_-A___wAH_4AAAAAAAAAAAB_-AAAAAD_8AAAf_h_-AAAf_gf_wAAAf_gP__8AB_-AAAAAAAAAAAAf_gAAAAA__AAAD_4f_gAAH_4H_4AAAH_4D___gAf_gAAAAAAAAAAAH_4AAAAAP_wAAA__H_8AAAAAD_-AAAA__A___4AH_4AAAAAAAAAAAB_-AAAAAD_8AAAP_w__AAAAAA__AAAAP_wP___AB_-AAAAAAAAAAAAf_gAAAAA__AAAD_8P_8AAAAAP_wAAAD_8D_7_4Af_gAAAAAAAAAAAH_4AAAAAP_wAAA__D__wAAAAD_8AAAAf_A_-_-AH_4AAAAAAAAAAAB_-AAAAAD_8AAAP_w___wAAAA_-AAAAH_4P_v_wB_-AAAAAAAAAAAAf_____4A__AAAD_8H___gAAAf_gAAAB_-D_5_8Af_gAAAAAAAAAAAH______gP_wAAA_-B____gAAH_4AAAAf_g_-f_gH_4AAAAAAAAAAAB______4D_8AAAf_gP____gAB_-AAAAH_4P_j_8B_-AAAAAAAAAAAAf_____-A__AAAP_4B_____AAf_gAAAA_-D_4__Af_gAAAAAAAAAAAH______gP_wAAH_-AP____8AH_4AAAAP_g_-H_4H_4AAAAAAAAAAAB______4D_8AAD__AB_____wB_-AAAAD_4P_h_-B_-AAAAAAAAAAAAf_____-A__AAD__wAH____-Af_AAAAA_-D_4P_wf_gAAAAAAAAAAAH______gP_4Af__4AAf____wH_wAAAAP_h_-D_8H_4AAAAAAAAAAAB______4D______-AAA____-B_-AAAAD_4f_gf_h_-AAAAAAAAAAAAf_____-A_______AAAB____wf_gAAAA_-D_4H_4f_AAAAAAAAAAAAH_4AAAAAP______gAAAB___-H_4AAAAP_h_-A__H_wAAAAAAAAAAAB_-AAAAAD______wAAAAB___h_-AAAAH_4P_gH_x_8AAAAAAAAAAAAf_gAAAAA______4AAAAAD__8f_gAAAB_-H_4B_-f_AAAAAAAAAAAAH_4AAAAAP_____8AAAAAAP__H_4AAAAf_h_-AP_n_wAAAAAAAAAAAB_-AAAAAD_____8AAAAAAA__w_-AAAAH_4f_gD_9_8AAAAAAAAAAAAf_gAAAAA_____8AAAAAAAH_8P_wAAAD_8D_4Af_f_AAAAAAAAAAAAH_4AAAAAP____4AAf_gAAA__D_8AAAA__B_-AD_7_wAAAAAAAAAAAB_-AAAAAD_8AAAAAH_4AAAH_w__AAAAP_wf_gA_-_8AAAAAAAAAAAAf_gAAAAA_-AAAAAB_-AAAB_8H_4AAAH_8H_4AH___AAAAAAAAAAAAH_4AAAAAP_gAAAAAP_gAAAf_B_-AAAB_-A_-AB___wAAAAAAAAAAAB_-AAAAAD_4AAAAAD_8AAAH_wf_wAAA__gf_gAP__8AAAAAAAAAAAAf_gAAAAA_-AAAAAA__AAAB_8D_-AAAP_wH_4AB___AAAAAAAAAAAAH_4AAAAAP_gAAAAAP_4AAA__A__wAAH_8B_-AAf__wAAAAAAAAAAAB_-AAAAAD_4AAAAAB__AAAf_wH_-AAD_-Af_gAD__8AAAAAAAAAAAAf______g_-AAAAAAf_8AAP_4B__wAD__gH_4AA___AAAAAAAAAAAAH______4P_gAAAAAH__wAf_-AP__AD__wB_-AAH__wAAAAAAAAAAAB______-D_4AAAAAA_______AB______8Af_gAA__8AAAAAAAAAAAAf______g_-AAAAAAH______wAf_____-AH_4AAP__AAAAAAAAAAAAH______4P_gAAAAAA______4AD______AB_-AAB__wAAAAAAAAAAAB______-D_4AAAAAAH_____8AAf_____gAf_gAAf_8AAAAAAAAAAAAf______g_-AAAAAAA_____-AAD_____wAH_4AAD__AAAAAAAAAAAAH______4P_gAAAAAAH_____AAAP____4AB_-AAA__wAAAAAAAAAAAB______-D_4AAAAAAAf____AAAB____4AAP_gAAH_8AAAAAAAAAAAAf______g_-AAAAAAAB____AAAAH___4AAD_4AAA__AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD__-AAAAAf__4AAA_-AAAP_wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH_0AAAAAA__gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAf_HAQD4AgEIEgIAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH_x4OD_gf_D_8P_AB4Dh_gOA4f-ABwHHA_AcA_AAAAAAAAAAAAAAAB_8OHh98H_w__D_4AOBw_8DgOH_wAcBxwf8HA_4DgMAAAAAAAAAAAAcADxw8HhwAOAAwPADwceHg4DhweAHAccPHhwfPA8DAAAAAAAAAAAAHAAc4OA4cADgAOBwAcOHAcOA4YDgA4OHDg4cHA4PgwAAAAAAAAAAABwAD8DAAHAA4ADgOADnDgHDgOGA4AODhwwOHDgHD4MAAAAAAAAAAAAcAAfBwABwAOAA4DgA5w4Aw4DhgOADgwcOABw4Bw3DAAAAAAB0oTAIAMDIdXCYAHShM-gUwcDABATFAASYAAAAAAAf_AeBwAB_8P_g4DgAfg4Aw4DjgeABxwcPwBwwBwzDAAAAAAAAAAAAH_wHgcAAf_D_4OA4AHwOAOOA4__AAccHB_gccAcM4wAAAAAAAAAAABwAD8HAAHAA4ADgOAA8DgDjgOP_gAHGBwD8HHAHDHMAAAAAAAAAAAAcAA_gwDhwAOAA4DgAGA4Aw4DjgcAA7gcAHhwwBwxzAAAAAAAAAAAAHAAc4OA4cADgAOA4ADgOAcOA44DgAO4HEAccOAcMOwAAAAAAAAAAABwAOHDgOHAA4ADgcAA4DgHDgcOA4ADsBxwHHDgHDB8AAAAAAAAAAAAf_Dh4ePBwAOAA4PAAOAcDg4HDgOAAfAccBxw8DgwfAAAAAAAAAAAAH_xwOD_gf_D_8P_gADgD_4H_g4DgAHwHDx4cHh4MDwAAAAAAAAAAAB_84BwfwH_w__D_gAA4Af4A_wGA4AA4Bwf8HA_8DA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AD4BgGAAOAcD-BwD8AwHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdKEwCADAyG3QACht0AEVQU09OIEVVUk9QRSBTSE9QG3QACht0AE90dG8tSGFobiA0G3QACht0AE1lZXJidXNjaBt0AAobdAA0OSA1NTUgNTg0IDExOTUbdAAKCht0AFRoYW5rIHlvdSBmb3Igc2hvcHBpbmcbdAAKG3QAUGxlYXNlIHZpc2l0IHVzIGFnYWluIHNvb24bdAAKCht0ADIwMTUvMTAvMzAgMTg6MTkbdAAKG3QACht0AEVQU09OIFdvcmtGb3JjZSBXUC00G3QAICAxG3QAIBt0ACAgICAgICAgIBt0EIAyNjIbdBAKCh0hEBt0EE5FVB0hABt0ECAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIIAyNTAbdBAKHSEQG3QQVEFYHSEAG3QQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIIAxMht0EAodIRAbdBBUT1RBTBt0ECAgICAgICAgICAggDI2Mh0hABt0EAoKG3QQQ0FTSBt0ECAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICCAMzAwG3QQCh0hEBt0EENIQU5HRRt0ECAgICAgICAgICAggDM4HSEAG3QQCgobYQEbZAMdVkIA

I cannot comment, so I post this as an answer:
You could decode the base64 encoded string to binary and try to detect the magic number of the image (assuming it has one). if it is an JPEG image it has a start and end signature. a BMP has the size of the image encoded into the header.

Related

Convert BASE64 String to PDF file in the IFS on AS400

We receive a BASE64 encoded representation of a courier label PDF in an xml file, which we store in the IFS of our AS400.
We would like to decode this BASE64 string and save it as a .PDF in the IFS so we can then either email it as an attachment or send it to a printer.
I have looked at the capability of the CPYSPLF command using the *PDF WSCST parameter, but this only seems relevant where we would have a Spooled File representation of the label we want to produce.
Does anyone know if this is possible via native iSeries commands/RPG?
One way is to
IFS_READ_UTF8 to load the XML file
XMLPARSE to make it a XML object
XML_TABLE to extract BASE64 data
BASE64_DECODE to decode B64 data to PDF binary stream
IFS_WRITE_BINARY to write that stream as a .pdf file
You could make it a pure sql prodecure, or a SQLRPGLE program.
You also could extract BASE64 date using RPGLE XML-INTO. The use Scott Klement's BASE64 SRVPGM to decode it, then write it to the IFS

ZPL II decode Z64 (base64 and LZ77) to human readable text in Python

I am trying to put together an app in python that will split a .prn file generated from Zebra Designer software containing thousands of labels in one file into single label files. I need to extract a highlighted below field and decode it to human readable form to use as names for the single label files. I have tried to decode base64 and decompress LZ77 as per instructions here on page 1435 that states:
Z64 encoding do the following:
• Compress the data using the LZ77 algorithm.
• Encode the compressed data using the MIME Base64 algorithm.
• Calculate a CRC across the encoded data.
• Add a unique header to differentiate the new format from the existing ASCII hexadecimal encoding.
Below is part of the label I am trying to decode back to human readable form just the same way the printer does.
^XA
^MMT
^PW709
^LL0472
^LS0
^FO256,288^GFA,04992,04992,00052,:Z64:
eJztlL9uHDcQxoegExYp6MKlIr6GgayXKvwISZ9HSHnF4sTDFTbg4l7HgIAzDypUOl3K0LgipRi4ISCG45lZniMJNpIyCHYEaKXlfvzxmz8EWGKJJZZY4j8WF195b4vHBBrD8wbZHI9phDI2fSwAutEqNPoGd2EEKDBiYY0nTQSD8QWq7P68zgOsvsfNTQUwDXxVGMDhqziw5hwra1A4FtMPGIq/OxbieNze0vYOAzZNOzrcpc4RzWVljcFMuOzwwBz3+4EXHdKqEY1hzQTDpWjac9Z8q1lT/LsknFfHRhz/LrS9veVTbDNpaueoTOeO/PTmkNcuVuboQ/EAo92UJ3ZLX9gN4YnDP5SbRG9IQ8myqaxtqpw3Sptorgt0DeFhTaTaNS7QH78MJubJxIk45/qQHe1LZHByEmDN5U/1M8cH4ehUqk4jc8wxieaYZo0NhAdP1RENnctzLlYDbT7p6IhzZg7pAccGwj/QNIVvroRTdPJ7qU9yO/qPOF4VDDa0kRumiB/O2aTQYBl0FM5EeUOVnK2TZg5kjAbG0VaHWTjmfYKicYcnjm3EafS0zMlA9pjjmQNdg1llhZY54sdU4vwqnBWVif1gtMENxFGzhj7WRV3tXp/yZvecV53cm7dFf2iviXNFHLf/7q3dpNkPVpO4AKf6UN7KOaieN6znIPUxPBIqzWe7E40NzMlrM9cHqP2oZDohtwUvW9ZsuyZOnDoTsvixcRgUc7h3yN1l7fUxPE/bOPuJjdvNHsQP9XUbaQq3W+5rrtZnzp5+X3c/cWKNofmk+tA8TIMv7jeZH+LA0P24kT+K/WyjpXbTmISDND++0LzgzIGhczxrjifNwG2tMLIf95Hm1K8sboRDTofuZ6R+0zeh+xllFDAwx36k+2Bc2aZvaffKGuo31qyJo2/DyY9ozri3s7mJF8MZDa36EO9zDEys+QP6/Kxd+LnfdYXHaYQ+VrAWjcxpKJ0zz8LkYpwltCNnSv5kzWQCaTbzbA9sunNycXfpyxzKKFYuPnUAc/h6lHvnL8ps58AjjkdAud/AqDz+zVFImq9wRCOrBOPX7aTJ5sR57Mc14VBardzXJw1g0vz2SxzLGlm1uxNH7l7Xn7Mfc59D3JcXsvM3Cp7R40eAp/Ao8kPOv4p7fuI/fLrEEkssscQS/8/4BE9yVVQ=:BB36
^PQ1,0,1,Y^XZ
I tried to use python code like below just to decode this line "eJztlL9uHDcQxoegExYp(...)fLrEEkssscQS/8/4BE9yVVQ=" so i stripped the ZPL language coding which is :Z64: prefix and :BB36 CRC output.
Code comes from this thread.
import zlib
import base64
def decode_base64_and_inflate(b64string):
decoded_data = base64.b64decode(b64string)
return zlib.decompress(decoded_data, 0)
Output I get is as such:
b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00#\x00\x00\x04\x00\x00\x00\x00#\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0f\xff\xf8\x7f\xff\x80\x00>\x03\xe0\xfe\x00\xf3\xf8\x07\x80?\x8e\x00\x00\x03\xfe\x00\x0f\xf8\x00\xfe\x00\x00\x0f\xff\x8f\x80>\x00\x00\xf8\x00>\xff\xf8\x00\x00\x00\x0f\xff\xf8\x7f\xff\xc0\x00?\x03\xc1\xff\x80w\xfc\x07\x80\x7f\xde\x00\x00\x07\xfe\x00?\xfc\x01\xff\x80\x00\x1f\xff\x87\xc0<\x00\x00\xf8\x00\x1e\xff\xfc\x00\x00\x00\x0f\xff\xf8\xff\xff\xc0\x00?\x83\xe3\xff\xc0\xff\xfe\x0f\x80\xff\xfe\x00\x00\x1f\xff\x80\xff\xfe\x03\xff\xc0\x00\x1f\xff\x8f\xe0>\x00\x00\xf8\x00>\xff\xfc\x00\x00\x00\x07\xff\xf0\x7f\xff\xc0\x00\x1f\x03\xc3\xff\xc0\x7f\x7f\x07\x81\xff\xfe\x00\x00\x1f\xff\x00\x7f\xfc\x07\xff\xc0\x00\x1f\xff\x07\xe0>\x00\x00|\x00<\x7f\xfc\x00\x00\x00\x0f\xff\xf8\x7f\xff\xc0\x00\x0f\x83\xe3\xef\xe0\xfe?\x0f\x83\xff\xfe\x00\x00?\xbf\x80\xfe\xbe\x0f\xef\xe0\x00\x0f\xff\x83\xf0>\x00\x00\xfc\x00>\xff\xfc\x00\x00\x00\x00\x01\xf0\x00\x0f\xc0\x00\x0f\xc3\xc3\x03\xf0|\x1f\x07\x81\xf0~\x00\x00>\x0f\x81\xf8\x04\x0f\x83\xf0\x00\x00\x0f\x81\xf0<\x00\x00|\x00|\x00|\x00\x00\x00\x00\x03\xf8\x00\x1f\x80\x00\x0f\xc3\xe2\x03\xf0\xf8\x0f\x8f\x83\xf0>\x00\x00>\x0f\xc3\xf8\x00\x0f\x83\xf0\x00\x00\x0f\x81\xf8>\x00\x00~\x00\xfc\x00\xfc\x00\x00\x00\x00\x07\xe0\x00\x1f\x00\x00\x07\xc7\xc0\x01\xf0p\x0f\x07\x83\xe0>\x00\x00|\x07\xc1\xf0\x00\x1f\x01\xf0\x00\x00\x07\x00\xf8>\x00\x00\x7fU\xfc\x00|\x00\x00\x00\x00\x0f\xe0\x00>\x00\x00\x03\xe3\xe0\x00\xf0\xf8\x0f\x0f\x83\xe0>\x00\x00|\x07\xe3\xe0\x00\x1f\x01\xf0\x00\x00\x0f\x80\xfc>\x00\x00?\xff\xf8\x00|\x00\x00\x00\x00\x1f\xc0\x00|\x00\x00\x01\xf3\xc0\x01\xf0x\x1f\x07\x83\xc0\x1e\x00\x00|\x07\xc1\xf0\x00\x1f\x01\xf0\x00\x00\x0f\x80|<\x00\x00?\xff\xf8\x00|\x00\x00\x00\x00?\x80\x00\xfc\x03\xfe\x03\xfb\xe0\x01\xf8\xff\xfe\x0f\x83\xe0>\x0f\xf8\xf8\x03\xe3\xe0\x00?\x01\xf8\xff\x80\x0f\x80\xfe>\x0f\xf8?\xff\xf8\x00\xfc\x00\x00\x00\x00?\x00\x01\xf8\x03\xff\x01\xf3\xc0\x01\xf0\x7f\xfc\x07\x83\xc0\x1e\x0f\xfc|\x03\xc1\xf0\x00\x1f\x00\xf0\xff\xc0\x07\x00>>\x0f\xfc\x1f\xff\xf0\x00|\x00\x00\x00\x00~\x00\x03\xf8\x03\xfe\x00\xff\xe0\x00\xf8\xff\xf8\x0f\x83\xe0>\x0f\xf8\xf8\x03\xe3\xf0\x00>\x00\xf8\xff\x80\x0f\x80?>\x0f\xf8?\x00\xf0\x00|\x00\x00\x00\x00|\x00\x03\xf0\x03\xff\x00\x7f\xc0\x01\xf0\x7f\xc0\x07\x83\xc0\x1e\x0f\xfcx\x03\xc1\xf8\x00\x1f\x01\xf0\xff\xc0\x0f\x80\x1f<\x0f\xfc\x1f\x01\xf0\x00|\x00\x00\x00\x00\xfc\x00\x0f\xe0\x03\xba\x00\xfb\xe0\x01\xf8\xf8\x00\x0f\x83\xe0>\x0b\xb8\xf8\x03\xe1\xfe\x88>\x00\xf8\xbb\x80\x0f\x80\x1f\xbe\x0b\xb8\x0f\x81\xe0\x00\xfc\x00\x00\x00\x01\xf8\x00\x07\xc0\x00\x00\x01\xf7\xc0\x01\xf0p\x00\x07\x83\xe0\x1e\x00\x00|\x07\xc1\xff\xfc\x1e\x00\xf0\x00\x00\x07\x00\x07\xfe\x00\x00\x0f\x01\xe0\x00|\x00\x00\x00\x03\xf8\x00\x0f\x80\x00\x00\x03\xe3\xe0\x03\xf0\xf8\x00\x0f\x83\xe0>\x00\x00\xf8\x03\xe0\xff\xfc>\x00\xf8\x00\x00\x0f\x80\x0f\xfe\x00\x00\x0f\x83\xe0\x00|\x00\x00\x00\x01\xf0\x00\x1f\x80\x00\x00\x03\xc3\xc1\x01\xf0x\x00\x07\x81\xf0~\x00\x00|\x03\xc0\x7f\xfc\x1f\x01\xf0\x00\x00\x0f\x80\x07\xfc\x00\x00\x07\x83\xc0\x00|\x00\x00\x00\x03\xf0\x00\x1f\x80\x00\x00\x0f\xe3\xe3\x8f\xe0\xfc\x0e\x0f\x83\xf8\xfe\x00\x00\xf8\x03\xe0?\xfc>\x00\xf8\x00\x00\x0f\x80\x0f\xbe\x00\x00\x0f\xc3\xe0\x00\xfc\x00\x00\x00\x03\xe0\x00\x1f\x00\x00\x00\x07\xc3\xc3\xff\xc0\x7f~\x07\x81\xff\xfe\x00\x00|\x03\xc0\x00<\x1e\x00\xf0\x00\x00\x07\x00\x1f>\x00\x00\x07\xc3\xc0\x00|\x00\x00\x00\x07\xe0\x00?\x00\x00\x00\x0f\x83\xe3\xff\xe0\x7f\xfe\x0f\x80\xff\xfe\x00\x00\xf8\x03\xe0\x00<>\x00\xf8\x00\x00\x0f\x80?>\x00\x00\x07\xe3\xc0\x00|\x00\x00\x00\x07\xc0\x00?\x00\x00\x00\x1f\x03\xc1\xff\x80?\xfc\x07\x80\xff\xde\x00\x00|\x07\xc0\x00<\x1f\x01\xf0\x00\x00\x0f\x80><\x00\x00\x03\xc7\x80\x00|\x00\x00\x00\x0f\xe0\x00?\x80\x00\x00?\x83\xe1\xff\x80?\xf8\x0f\x80\xff\xbe\x00\x00\xfc\x07\xc0\x00<?\x01\xf8\x00\x00\x0f\x80~>\x00\x00\x03\xef\x80\x00\xfc\x00\x00\x00\x07\xe0\x00?\x00\x00\x00\x04\x07\xc0|\x00\x07\xc0\x07\x80\x1c\x1e\x00\x00|\x07\xc0\x00<\x1f\x01\xf0\x00\x00\x07\x00|>\x00\x00\x03\xe7\x00\x00|\x00\x00\x00\x07\xe0\x00?\x80\x80\x00\x00\x03\xe0\x00\x00\x00\x00\x0f\x80\x00>\x00\x00~\x07\xc0\x00<\x1f\x83\xf0\x00\x00\x0f\x80\xf8>\x00\x00\x03\xef\x80\x00|\x00\x00\x00\x07\xf00?\x81\x80\x00\x00\x03\xc0\x00\x00\x00\x00\x07\x80\x00\x1e\x00\x00|\x07\x80\x00<\x1f\x81\xf0\x00\x00\x0f\x81\xf8<\x00\x00\x01\xff\x00\x00|\x00\x00\x00\x07\xfb\xf8?\xef\x80\x00\x00\x03\xe0\x00\x00\x00\x00\x0f\x80\x00>\x00\x00>\x0f\x80\xff\xfc\x0f\x83\xe0\x00\x00\x0f\x83\xf8>\x00\x00\x01\xff\x80\x00\xfc\x00\x00\x00\x03\xff\xf0\x1f\xff\xc0\x00\x00\x03\xc0\x00\x00\x00\x00\x07\x80\x00\x1e\x00\x00?\xff\x00\xff\xfc\x07\xff\xc0\x00\x00\x07\x01\xf0>\x00\x00\x01\xff\x00\x00|\x00\x00\x00\x03\xff\xf8\x1f\xff\x80\x00\x00\x03\xe0\x00\x00\x00\x00\x0f\x80\x00>\x00\x00?\xff\x00\xff\xfc\x0f\xff\xe0\x00\x00\x0f\x83\xe0>\x00\x00\x00\xfe\x00\x00|\x00\x00\x00\x01\xff\xf0\x0f\xff\x80\x00\x00\x03\xc0\x00\x00\x00\x00\x07\x80\x00\x1e\x00\x00\x1f\xfe\x00\xff\xfc\x07\xff\x80\x00\x00\x0f\x87\xc0<\x00\x00\x00\xfe\x00\x00|\x00\x00\x00\x00\xff\xe0\x0f\xfe\x00\x00\x00\x03\xe0\x00\x00\x00\x00\x0f\x80\x00>\x00\x00\x0f\xfe\x00\xff\xfc\x03\xff\x80\x00\x00\x0f\x8f\xe0>\x00\x00\x00\xfe\x00\x00\xfc\x00\x00\x00\x00\x7f\x00\x01\xf0\x00\x00\x00\x07\xc0\x00\x00\x00\x00\x07\x80\x00\x1e\x00\x00\x01\xf0\x00D#\x00|\x00\x00\x00\x05\x01\x00\x14\x00\x00\x00T\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\xe0\x00\x00\x00\x00\x0f\x80\x00>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\xc0\x00\x00\x00\x00\x07\x80\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
When run the original label code through Labelary viewer it shows as text with some special charactes. How do I calculate this compressed text back to human readable form?
You can try to use this method to create the PNG:
https://codeutility.org/javascript-convert-zpl-base64-in-image-png-stack-overflow/

Binary data from mongodb gets corrupted

When I upload a photo it converts to base64 and then when I send to mongodb using Mongoose it saves as Binary. But when I call the same picture back from the database it returns as Buffer array. After converting to base64 it returns as a base64 string but completely different from the original base64. The new base64 is unable to be rendered in browser because it has been corrupted.
Below are pictures of the different strings
This is the initial base64
This is the Buffer array
This is the corrupted base64 after converting from the buffer array using Buffer.from(avatar).toString('base64').
Please note that I appended to it "data:image/png;base64," before rendering in the browser and it still did not render.
Please can someone tell me what I am doing wrong?
the best solution is convert to png or jpg file and upload only path and save image to folder.
Here is how I solved it.
I converted from binary to utf8 instead of to base64.
There is a huge difference bewteen
Buffer.from(binary_data, 'binary').toString('utf8')
and
Buffer.from(binary_data, 'binary').toString('base64')

Sanitize Html with base64 image (and convert it to an image)

I have a WebApp with a TinyMCE Html Editor that allows users to input some html from a web page. Images can be pasted and are encoded as base64.
Before saving the user input to DB I use OWASP java-html-sanitizer to discard potential dangerous code (javascript,...).
Some characters in the base64 string of the image are escaped and when I try to get the image back (using apache commons Base64) I'm not able to get a valid image.
Here my code for decoding the image:
byte[] b;
String s = html;
b = s.getBytes(Utility.UTF8);
b = org.apache.commons.codec.binary.Base64.decodeBase64(b);
For the HtmlSanitizer I have done nothing special, just followed the Ebay Policy Example allowing base64 images as suggested here.
Ah, as suggested here I need "to HTML decode before base64 decoding".
I have tried with apache common StringEscapeUtils:
org.apache.commons.lang3.StringEscapeUtils.unescapeHtml4(html);
and it's working. Great.
allowedSchemes: [ 'data'] or allowedSchemesByTag: { img: [ 'data' ]} can be used to allow img tag to accept/allow base64.

Image to binary string

I need this for a scriptUI panel I am working on. I am trying to add a custom image button and the image to be part of the jsx file.
Does somebody know how this kind binary string is achieved, and how do I turn a png file to string of that type '\u0089PNG....' (is it initially Base64 encoded and then another encoding, or is it an encoded Byte array):
http://i.imgur.com/n2wpdmQ.png
Thanks in advance!
I found the solution using ExtendScript Toolkit
var img = File("1.png");
img.open('r');
img.encoding = 'BINARY';
var imgstr = img.read();
img.close();
$.writeln(imgstr.toSource());
It reads the PNG image and outputs the string in the console.
Thanks!

Resources