Вверх ↑
Ответов: 5126
Рейтинг: 578
#1: 2022-04-22 14:16:29 ЛС | профиль | цитата
Портировал с VCL алгоритмы Base64 и Base91 (d4 & FPC) Base91->http://base91.sourceforge.net/
[b]Stream->Base64, Base64->Stream (Memory)
StreamMemory->FileBase64, FileBase64->StreamMemory[/b]

Base91 поновей и хоть нигде широко не распространён но всё же кое где уже используется. Плотность сжатия потока лучше но скорость соответственно чуть ниже.
На скриншоте артефакты от штатных компонентов (с моими вьюверами отображается нормально, значит поток исправен)



--- Добавлено в 2022-04-22 14:21:40

Конфигурация идентична для Base64 и Base91
[Property]
@Stream=Определяет данные в формате Stream для кодирования|10|
@String=Определяет данные в формате String для декодирования|2|
@FileName=Имя файла для кодирования/декодирования данных по умолчанию|2|
Mode=Режим кодирования/декодирования данных|4|0|Encode,Decode

[Methods]
doMemory=Кодирует/декодирует двоичные данные в памяти|1|
doFile=Кодирует/декодирует двоичные данные в(из) файл(а)|1|
onEncode=Событие происходит после кодирования данных методом doMemory и выводит в поток строку закодированных данных|2|
onDecode=Событие происходит после декодирования данных методом doMemory и выводит в поток данные типа Stream|2|
Stream=Содержит идентификатор кодированных/декодированных данных типа Stream|3|10
Size=Содержит размер данных в байтах|3|1
*SrcStream=Определяет данные для кодирования типа Stream|4|10
*SrcString=Определяет данные для декодирования типа String|4|2
*FileName=Имя файла для кодирования/декодирования данных|4|2
карма: 5
0
Редактировалось 1 раз(а), последний 2022-04-22 14:21:40