mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-10-27 11:51:56 +01:00
* ability to set png writer's zlib Compressionlevel, fixes Mantis #19224
git-svn-id: trunk@17716 -
This commit is contained in:
parent
829ee9828d
commit
2f7525f26a
@ -41,6 +41,7 @@ type
|
|||||||
FDatalineLength : longword;
|
FDatalineLength : longword;
|
||||||
ZData : TMemoryStream; // holds uncompressed data until all blocks are written
|
ZData : TMemoryStream; // holds uncompressed data until all blocks are written
|
||||||
Compressor : TCompressionStream; // compresses the data
|
Compressor : TCompressionStream; // compresses the data
|
||||||
|
FCompressionLevel : TCompressionLevel;
|
||||||
procedure WriteChunk;
|
procedure WriteChunk;
|
||||||
function GetColorPixel (x,y:longword) : TColorData;
|
function GetColorPixel (x,y:longword) : TColorData;
|
||||||
function GetPalettePixel (x,y:longword) : TColorData;
|
function GetPalettePixel (x,y:longword) : TColorData;
|
||||||
@ -94,6 +95,7 @@ type
|
|||||||
property CompressedText : boolean read FCompressedText write FCompressedText;
|
property CompressedText : boolean read FCompressedText write FCompressedText;
|
||||||
property WordSized : boolean read FWordSized write FWordSized;
|
property WordSized : boolean read FWordSized write FWordSized;
|
||||||
property UseAlpha : boolean read FUseAlpha write FUseAlpha;
|
property UseAlpha : boolean read FUseAlpha write FUseAlpha;
|
||||||
|
property CompressionLevel : TCompressionLevel read FCompressionLevel write FCompressionLevel;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
@ -108,6 +110,7 @@ begin
|
|||||||
FCompressedText := True;
|
FCompressedText := True;
|
||||||
FWordSized := True;
|
FWordSized := True;
|
||||||
FUseAlpha := False;
|
FUseAlpha := False;
|
||||||
|
FCompressionLevel:=clDefault;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
destructor TFPWriterPNG.destroy;
|
destructor TFPWriterPNG.destroy;
|
||||||
@ -565,7 +568,7 @@ begin
|
|||||||
GetMem (FCurrentLine, FDatalineLength);
|
GetMem (FCurrentLine, FDatalineLength);
|
||||||
fillchar (FCurrentLine^,FDatalineLength,0);
|
fillchar (FCurrentLine^,FDatalineLength,0);
|
||||||
ZData := TMemoryStream.Create;
|
ZData := TMemoryStream.Create;
|
||||||
Compressor := TCompressionStream.Create (clMax,ZData);
|
Compressor := TCompressionStream.Create (FCompressionLevel,ZData);
|
||||||
FGetPixel := DecideGetPixel;
|
FGetPixel := DecideGetPixel;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user