Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Delphi DLL) Ascii85 Encoding and DecodingDemonstrates ascii85 encoding and decoding. Note: Requires Chilkat v9.5.0.79 or greater.
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, BinData, StringBuilder; ... procedure TForm1.Button1Click(Sender: TObject); var sb: HCkStringBuilder; success: Boolean; encodedAscii85: PWideChar; bd: HCkBinData; begin // First demonstrate encoding strings to ascii85 and back. sb := CkStringBuilder_Create(); success := CkStringBuilder_Append(sb,'Man is distinguished, not only by his reason, but by this singular passion from other animals, which is a lust of the mind, that by a perseverance of delight in the continued and indefatigable generation of knowledge, exceeds the short vehemence of any carnal pleasure.'); encodedAscii85 := CkStringBuilder__getEncoded(sb,'ascii85','utf-8'); Memo1.Lines.Add(encodedAscii85); // Result is: 9jqo^BlbD-BleB1DJ+*+F(f,q/0JhKF<GL>Cj@.4 ... DII?(E,9)oF*2M7/c // Decode back to the original: CkStringBuilder_Clear(sb); CkStringBuilder_Append(sb,encodedAscii85); success := CkStringBuilder_Decode(sb,'ascii85','utf-8'); Memo1.Lines.Add('Original:'); Memo1.Lines.Add(CkStringBuilder__getAsString(sb)); // ---- Now encode binary data to ascii85 ---- bd := CkBinData_Create(); success := CkBinData_LoadFile(bd,'qa_data/jpg/starfish20.jpg'); encodedAscii85 := CkBinData__getEncoded(bd,'ascii85'); Memo1.Lines.Add(encodedAscii85); // Result is: s4IA0!"_al8O`[\!<E0k!([(is8E!F7VQ[M+Eqj?FED)3+C]U=6"Fn ... // Decode... CkBinData_Clear(bd); CkBinData_AppendEncoded(bd,encodedAscii85,'ascii85'); success := CkBinData_WriteFile(bd,'qa_output/starfish20.jpg'); CkStringBuilder_Dispose(sb); CkBinData_Dispose(bd); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.