Sign in Join
FPDoc Onlineexperiment

TCustomImageListResolution.WriteData procedure

Member of TCustomImageListResolutionprotectedIn unit ImgList

Stores the raw image data for the resolution to a Stream.

Declaration

pascal
procedure WriteData(AStream: TStream; const ACompress: Boolean)
 ; virtual

Arguments

AStream

Stream where raw image data for the resolution is stored.

ACompress

Indicates if compression is applied to raw image data.

Description

WriteData is a procedure used to write the raw image data for all images in the resolution to the specified stream.

AStream contains the TStream class instance where raw image data is stored in the method. The current position in AStream is used when values are written in the method.

ACompress indicates if compression is applied to raw image data before it is written to the stream. When ACompress is True, a temporary TCompressionStream class instance is used to get the compressed values written to the stream. ACompress also determines the image list signature written at the start of AStream. When ACompress is False, the value in SIG_LAZ3 is written as the image list signature. When ACompressed is True, the value in SIG_LAZ4 is used.

WriteData writes a signature and header to the stream in AStream. First, the image list signature is written as described in the preceding paragraph. Second, a header is written that contains Integer values for the Count, Width, and Height properties (in that order). Finally, the raw image data is written to the stream (using optional compression when ACompress is True). The uncompressed values represent the 32-bit RGBA raw image data for the entire resolution. Raw image data is not written if the Count property contains 0 (zero).

WriteData is used in the implementation of the TCustomImageList.WriteData method.

Visibility changed in LCL version 5.0.

See also

An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.