不正确的base64编码VBA

我试图在VBA Excel中将JPG图像编码为HTML (<img src="data:image/jpg .." />) Base64格式。

我发现了一个类似的问题, 在Excel VBA中将图像(jpg)转换为base64? ,并尝试了代码:

 'https://stackoverflow.com/questions/2043393/convert-image-jpg-to-base64-in-excel-vba Sub EncodeFile() Dim strPicPath: strPicPath = "MyDriveHere:\SomePath\image.jpg" 'Credit to Wikipedia for orange picture: 'https://upload.wikimedia.org/wikipedia/commons/thumb/1/10/Citrus_reticulata_April_2013_Nordbaden.JPG/220px-Citrus_reticulata_April_2013_Nordbaden.JPG Const adTypeBinary = 1 ' Binary file is encoded ' Variables for encoding Dim objXML Dim objDocElem ' Variable for reading binary picture Dim objStream ' Open data stream from picture Set objStream = CreateObject("ADODB.Stream") objStream.Type = adTypeBinary objStream.Open objStream.LoadFromFile (strPicPath) ' Create XML Document object and root node ' that will contain the data Set objXML = CreateObject("MSXml2.DOMDocument") Set objDocElem = objXML.createElement("Base64Data") objDocElem.DataType = "bin.base64" ' Set binary value objDocElem.nodeTypedValue = objStream.Read() ' Get base64 value Debug.Print objDocElem.text ' Clean all Set objXML = Nothing Set objDocElem = Nothing Set objStream = Nothing End Sub 

在这里使用图片, https://upload.wikimedia.org/wikipedia/commons/thumb/1/10/Citrus_reticulata_April_2013_Nordbaden.JPG/220px-Citrus_reticulata_April_2013_Nordbaden.JPG

输出开始

2ESk9uWHSmQ6ayKMjmX1FWRYG5BkERRkgK9qYbqyHKTijDQc

但它应该开始

/ 9J / 4AAQSkZJRgABAQEASABIAAD //克

代码的输出也没有在https://codebeautify.org/base64-to-image-converter#上生成任何图像

为什么生成的输出给我一个不同于标准Base64编码的编码?

即时窗口没有无限的容量:如果打印太多,您将开始失去开始…

  Debug.Print Left(objDocElem.Text, 200) 

给我预期的开始/9j/4AAQSkZJRgABAQEASABIAAD//gBgRmlsZ