mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-12-17 05:20:48 +01:00
parent
7c5ecf3461
commit
849470df8f
@ -254,8 +254,8 @@ type
|
|||||||
procedure CopyPixels(ASource: TFPCustomImage; XDst: Integer = 0; YDst: Integer = 0;
|
procedure CopyPixels(ASource: TFPCustomImage; XDst: Integer = 0; YDst: Integer = 0;
|
||||||
AlphaMask: Boolean = False; AlphaTreshold: Word = 0); virtual;
|
AlphaMask: Boolean = False; AlphaTreshold: Word = 0); virtual;
|
||||||
procedure AlphaFromMask(AKeepAlpha: Boolean = True);
|
procedure AlphaFromMask(AKeepAlpha: Boolean = True);
|
||||||
procedure GetXYDataPostion(x, y: integer; out Position: TRawImagePosition);
|
procedure GetXYDataPosition(x, y: integer; out Position: TRawImagePosition);
|
||||||
procedure GetXYMaskPostion(x, y: integer; out Position: TRawImagePosition);
|
procedure GetXYMaskPosition(x, y: integer; out Position: TRawImagePosition);
|
||||||
function GetDataLineStart(y: integer): Pointer;// similar to Delphi TBitmap.ScanLine. Only works with byte aligned lines.
|
function GetDataLineStart(y: integer): Pointer;// similar to Delphi TBitmap.ScanLine. Only works with byte aligned lines.
|
||||||
procedure CreateData; virtual;
|
procedure CreateData; virtual;
|
||||||
function HasTransparency: boolean; virtual;
|
function HasTransparency: boolean; virtual;
|
||||||
@ -1659,7 +1659,7 @@ procedure TLazIntfImage.GetColor_Generic(x, y: integer; out Value: TFPColor);
|
|||||||
var
|
var
|
||||||
Position: TRawImagePosition;
|
Position: TRawImagePosition;
|
||||||
begin
|
begin
|
||||||
GetXYDataPostion(x,y,Position);
|
GetXYDataPosition(x,y,Position);
|
||||||
|
|
||||||
if FRawImage.Description.PaletteColorCount = 0
|
if FRawImage.Description.PaletteColorCount = 0
|
||||||
then begin
|
then begin
|
||||||
@ -1683,7 +1683,7 @@ begin
|
|||||||
Avalue := False;
|
Avalue := False;
|
||||||
end
|
end
|
||||||
else begin
|
else begin
|
||||||
GetXYMaskPostion(x,y,Position);
|
GetXYMaskPosition(x,y,Position);
|
||||||
FRawimage.ReadMask(Position, AValue);
|
FRawimage.ReadMask(Position, AValue);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
@ -1692,7 +1692,7 @@ procedure TLazIntfImage.SetColor_Generic(x, y: integer; const Value: TFPColor);
|
|||||||
var
|
var
|
||||||
Position: TRawImagePosition;
|
Position: TRawImagePosition;
|
||||||
begin
|
begin
|
||||||
GetXYDataPostion(x,y,Position);
|
GetXYDataPosition(x,y,Position);
|
||||||
|
|
||||||
if FRawImage.Description.PaletteColorCount = 0
|
if FRawImage.Description.PaletteColorCount = 0
|
||||||
then begin
|
then begin
|
||||||
@ -1710,7 +1710,7 @@ var
|
|||||||
begin
|
begin
|
||||||
if Desc.MaskBitsPerPixel = 0 then Exit;
|
if Desc.MaskBitsPerPixel = 0 then Exit;
|
||||||
|
|
||||||
GetXYMaskPostion(x,y,Position);
|
GetXYMaskPosition(x,y,Position);
|
||||||
FRawImage.WriteMask(Position, AValue);
|
FRawImage.WriteMask(Position, AValue);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -1720,7 +1720,7 @@ var
|
|||||||
Desc: TRawImageDescription absolute FRawImage.Description;
|
Desc: TRawImageDescription absolute FRawImage.Description;
|
||||||
Position: TRawImagePosition;
|
Position: TRawImagePosition;
|
||||||
begin
|
begin
|
||||||
GetXYDataPostion(x,y,Position);
|
GetXYDataPosition(x,y,Position);
|
||||||
FReadRawImageBits(FRawImage.Data, Position, Desc.RedPrec, Desc.RedShift, Value.Red);
|
FReadRawImageBits(FRawImage.Data, Position, Desc.RedPrec, Desc.RedShift, Value.Red);
|
||||||
FReadRawImageBits(FRawImage.Data, Position, Desc.GreenPrec, Desc.GreenShift, Value.Green);
|
FReadRawImageBits(FRawImage.Data, Position, Desc.GreenPrec, Desc.GreenShift, Value.Green);
|
||||||
FReadRawImageBits(FRawImage.Data, Position, Desc.BluePrec, Desc.BlueShift, Value.Blue);
|
FReadRawImageBits(FRawImage.Data, Position, Desc.BluePrec, Desc.BlueShift, Value.Blue);
|
||||||
@ -1732,7 +1732,7 @@ var
|
|||||||
Desc: TRawImageDescription absolute FRawImage.Description;
|
Desc: TRawImageDescription absolute FRawImage.Description;
|
||||||
Position: TRawImagePosition;
|
Position: TRawImagePosition;
|
||||||
begin
|
begin
|
||||||
GetXYDataPostion(x,y,Position);
|
GetXYDataPosition(x,y,Position);
|
||||||
FReadRawImageBits(FRawImage.Data, Position, Desc.RedPrec, Desc.RedShift, Value.Red);
|
FReadRawImageBits(FRawImage.Data, Position, Desc.RedPrec, Desc.RedShift, Value.Red);
|
||||||
FReadRawImageBits(FRawImage.Data, Position, Desc.GreenPrec, Desc.GreenShift, Value.Green);
|
FReadRawImageBits(FRawImage.Data, Position, Desc.GreenPrec, Desc.GreenShift, Value.Green);
|
||||||
FReadRawImageBits(FRawImage.Data, Position, Desc.BluePrec, Desc.BlueShift, Value.Blue);
|
FReadRawImageBits(FRawImage.Data, Position, Desc.BluePrec, Desc.BlueShift, Value.Blue);
|
||||||
@ -1745,7 +1745,7 @@ var
|
|||||||
Desc: TRawImageDescription absolute FRawImage.Description;
|
Desc: TRawImageDescription absolute FRawImage.Description;
|
||||||
Position: TRawImagePosition;
|
Position: TRawImagePosition;
|
||||||
begin
|
begin
|
||||||
GetXYDataPostion(x,y,Position);
|
GetXYDataPosition(x,y,Position);
|
||||||
FReadRawImageBits(FRawImage.Data, Position, Desc.RedPrec, Desc.RedShift, Value.Red);
|
FReadRawImageBits(FRawImage.Data, Position, Desc.RedPrec, Desc.RedShift, Value.Red);
|
||||||
Value.Green := Value.Red;
|
Value.Green := Value.Red;
|
||||||
Value.Blue := Value.Red;
|
Value.Blue := Value.Red;
|
||||||
@ -2342,7 +2342,7 @@ procedure TLazIntfImage.GetColor_NULL(x, y: integer; out Value: TFPColor);
|
|||||||
//var
|
//var
|
||||||
// Position: TRawImagePosition;
|
// Position: TRawImagePosition;
|
||||||
begin
|
begin
|
||||||
// GetXYDataPostion(x,y,Position);
|
// GetXYDataPosition(x,y,Position);
|
||||||
Value.Red:=0;
|
Value.Red:=0;
|
||||||
Value.Green:=0;
|
Value.Green:=0;
|
||||||
Value.Blue:=0;
|
Value.Blue:=0;
|
||||||
@ -2354,7 +2354,7 @@ var
|
|||||||
Desc: TRawImageDescription absolute FRawImage.Description;
|
Desc: TRawImageDescription absolute FRawImage.Description;
|
||||||
Position: TRawImagePosition;
|
Position: TRawImagePosition;
|
||||||
begin
|
begin
|
||||||
GetXYDataPostion(x,y,Position);
|
GetXYDataPosition(x,y,Position);
|
||||||
FWriteRawImageBits(FRawImage.Data, Position, Desc.RedPrec,Desc.RedShift, Value.Red);
|
FWriteRawImageBits(FRawImage.Data, Position, Desc.RedPrec,Desc.RedShift, Value.Red);
|
||||||
FWriteRawImageBits(FRawImage.Data, Position, Desc.GreenPrec, Desc.GreenShift, Value.Green);
|
FWriteRawImageBits(FRawImage.Data, Position, Desc.GreenPrec, Desc.GreenShift, Value.Green);
|
||||||
FWriteRawImageBits(FRawImage.Data, Position, Desc.BluePrec, Desc.BlueShift, Value.Blue);
|
FWriteRawImageBits(FRawImage.Data, Position, Desc.BluePrec, Desc.BlueShift, Value.Blue);
|
||||||
@ -2366,7 +2366,7 @@ var
|
|||||||
Desc: TRawImageDescription absolute FRawImage.Description;
|
Desc: TRawImageDescription absolute FRawImage.Description;
|
||||||
Position: TRawImagePosition;
|
Position: TRawImagePosition;
|
||||||
begin
|
begin
|
||||||
GetXYDataPostion(x,y,Position);
|
GetXYDataPosition(x,y,Position);
|
||||||
FWriteRawImageBits(FRawImage.Data, Position, Desc.RedPrec, Desc.RedShift, Value.Red);
|
FWriteRawImageBits(FRawImage.Data, Position, Desc.RedPrec, Desc.RedShift, Value.Red);
|
||||||
FWriteRawImageBits(FRawImage.Data, Position, Desc.GreenPrec, Desc.GreenShift, Value.Green);
|
FWriteRawImageBits(FRawImage.Data, Position, Desc.GreenPrec, Desc.GreenShift, Value.Green);
|
||||||
FWriteRawImageBits(FRawImage.Data, Position, Desc.BluePrec, Desc.BlueShift, Value.Blue);
|
FWriteRawImageBits(FRawImage.Data, Position, Desc.BluePrec, Desc.BlueShift, Value.Blue);
|
||||||
@ -2378,7 +2378,7 @@ var
|
|||||||
Desc: TRawImageDescription absolute FRawImage.Description;
|
Desc: TRawImageDescription absolute FRawImage.Description;
|
||||||
Position: TRawImagePosition;
|
Position: TRawImagePosition;
|
||||||
begin
|
begin
|
||||||
GetXYDataPostion(x,y,Position);
|
GetXYDataPosition(x,y,Position);
|
||||||
FWriteRawImageBits(FRawImage.Data, Position, Desc.RedPrec, Desc.RedShift, Value.Red);
|
FWriteRawImageBits(FRawImage.Data, Position, Desc.RedPrec, Desc.RedShift, Value.Red);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -3107,12 +3107,12 @@ begin
|
|||||||
Result:=true;
|
Result:=true;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLazIntfImage.GetXYDataPostion(x, y: integer; out Position: TRawImagePosition);
|
procedure TLazIntfImage.GetXYDataPosition(x, y: integer; out Position: TRawImagePosition);
|
||||||
begin
|
begin
|
||||||
Position := FLineStarts^.GetPosition(x, y);
|
Position := FLineStarts^.GetPosition(x, y);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TLazIntfImage.GetXYMaskPostion(x, y: integer; out Position: TRawImagePosition);
|
procedure TLazIntfImage.GetXYMaskPosition(x, y: integer; out Position: TRawImagePosition);
|
||||||
begin
|
begin
|
||||||
Position := FMaskLineStarts^.GetPosition(x, y);
|
Position := FMaskLineStarts^.GetPosition(x, y);
|
||||||
end;
|
end;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user