|  | 
Chilkat  HOME  Android™  AutoIt  C  C#  C++  Chilkat2-Python  CkPython  Classic ASP  DataFlex  Delphi DLL  Go  Java  Node.js  Objective-C  PHP Extension  Perl  PowerBuilder  PowerShell  PureBasic  Ruby  SQL Server  Swift  Tcl  Unicode C  Unicode C++  VB.NET  VBScript  Visual Basic 6.0  Visual FoxPro  Xojo Plugin
| (Tcl) Insert PDF as Base64 into XML, then Extract back to PDF FileDemonstrates how to insert any file into XML using base64 encoding, and then extract back to the original file. This example embeds a PDF in the XML, but the type of file does not matter. It can be any type of file. 
 load ./chilkat.dll # Load our PDF file. set bd [new_CkBinData] set success [CkBinData_LoadFile $bd "qa_data/helloWorld.pdf"] if {$success != 1} then { puts "Failed to load PDF file." delete_CkBinData $bd exit } # Load the following XML: # # <?xml version="1.0" encoding="utf-8" ?> # <something> # <xyz> # <abc123>A base64 encoded PDF file will be inserted under this node.</abc123> # </xyz> # </something> set xml [new_CkXml] set success [CkXml_LoadXmlFile $xml "qa_data/xml/xmlToContainPdf.xml"] if {$success != 1} then { puts "Failed to load XML file." delete_CkBinData $bd delete_CkXml $xml exit } # Insert the PDF into the XML. CkXml_NewChild2 $xml "xyz|pdfData" [CkBinData_getEncoded $bd "base64"] # Show the new XML: puts [CkXml_getXml $xml] # The XML now looks like this: # <?xml version="1.0" encoding="utf-8" ?> # <something> # <xyz> # <abc123>A base64 encoded PDF file will be inserted under this node.</abc123> # <pdfData>JVBERi0xL ... UlRU9GCg==</pdfData> # </xyz> # </something> # To extract the PDF data out and restore the PDF file: set bd2 [new_CkBinData] set success [CkBinData_AppendEncoded $bd2 [CkXml_getChildContent $xml "xyz|pdfData"] "base64"] set success [CkBinData_WriteFile $bd2 "qa_output/helloWorld.pdf"] puts "Success." delete_CkBinData $bd delete_CkXml $xml delete_CkBinData $bd2 | ||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.