PureBasic

CompressMemory()

Синтаксис

Result = CompressMemory(*Buffer , Size , *Output , OutputSize [, Plugin [, Level]])

Описание


Сжимает данные содержащиеся в указанном буфере памяти и помещает их в выходной буфер. Размер выходного буфера должен быть не меньше, чем у исходного буфера. Сжатые данные могут быть распакованы командой UncompressMemory().

Параметры

*Buffer Адрес исходного буфера памяти, в котором находятся не сжатые данные.
Size Размер исходного буфера памяти.
*Output Адрес выходного буфера памяти, в который будут помещены сжатые данные.
OutputSize Размер выходного буфера памяти.
Plugin (дополн.) Плагин, который будет использован, если было зарегистрировано несколько плагинов-упаковщиков. Это может быть одно из следующих значений:
  #PB_PackerPlugin_BriefLZ: Использовать упаковщик BriefLZ для сжатия данных. Необходим предварительный вызов UseBriefLZPacker().
  #PB_PackerPlugin_Zip    : Использовать упаковщик Zip для сжатия данных. Необходим предварительный вызов UseZipPacker().
  #PB_PackerPlugin_LZMA   : Использовать упаковщик LZMA для сжатия данных. Необходим предварительный вызов UseLZMAPacker().
Level (дополн.) Уровень сжатия данных. Это целочисленное значение в диапазоне от 0 (низкая степень сжатия, но с высокой скоростью) до 9 (более высокая степень сжатия, но с низкой скоростью сжатия).

Возвращаемое значение

Возвращает размер сжатых данных, если операция по сжатию данных прошла успешно, в противном случае 0. Если данные не могут быть сжаты (уже сжатые данные больше не сжимаются), будет возвращён 0.

См. также

UncompressMemory()

Поддерживаемые OS

Все

<- ClosePack() - Оглавление Packer - CreatePack()->