diff --git a/applications/lazimageeditor/DLBitmap.pas b/applications/lazimageeditor/DLBitmap.pas
index f81aa1f0e..660ec3ca8 100644
--- a/applications/lazimageeditor/DLBitmap.pas
+++ b/applications/lazimageeditor/DLBitmap.pas
@@ -139,6 +139,7 @@ operator * (const A, B: TRGBATriple): TRGBATriple;
operator div (const A, B: TRGBATriple): TRGBATriple;
function DWordTrans(SrcRow: TRGBATriple): DWORD;
function DWordToTriple(SrcRow: DWORD): TRGBATriple;
+procedure StretchLinear(Dest, Src: TDLBitmap);
implementation
diff --git a/applications/lazimageeditor/DLBmpUtils.inc b/applications/lazimageeditor/DLBmpUtils.inc
index ce1aafe45..80694f145 100644
--- a/applications/lazimageeditor/DLBmpUtils.inc
+++ b/applications/lazimageeditor/DLBmpUtils.inc
@@ -614,7 +614,7 @@ begin
aBitmap.InvalidateScanLine;
end;
-procedure StretchLinear(Dest, Src: TDLBitmap); // only for 24bit bitmap
+procedure StretchLinear(Dest, Src: TDLBitmap);
var
sw, sh, dw, dh, B, N, x, y, i, j, k, nPixelSize: DWord;
pLinePrev, pLineNext, pDest, pA, pB, pC, pD: pRGBATriple;
@@ -672,6 +672,29 @@ begin
end;
end;
end;
+ Dest.InvalidateScanLine;
end;
+procedure StretchDLBMP(Src: TDLBitmap; MultiX, MultiY: integer);
+var
+ sw, sh, dw, dh, B, N, x, y, i, j, k, nPixelSize: DWord;
+ Dest: TDLBitmap;
+begin
+ sw := Src.Width - 1;
+ sh := Src.Height - 1;
+ dw := (Src.Width - 1) * MultiX;
+ dh := (Src.Height - 1) * MultiY;
+ nPixelSize := 3;
+ for i := 0 to sh do
+ begin
+ for j := 0 to sw do
+ begin
+ for k := 0 to nPixelSize - 1 do
+ begin
+
+ end;
+ end;
+ end;
+ Dest.InvalidateScanLine;
+end;
diff --git a/applications/lazimageeditor/bmprgbtypes.pas b/applications/lazimageeditor/bmprgbtypes.pas
index 76374a9b2..758b52299 100644
--- a/applications/lazimageeditor/bmprgbtypes.pas
+++ b/applications/lazimageeditor/bmprgbtypes.pas
@@ -599,7 +599,11 @@ procedure TRGBBitmapCore.StretchDrawTo(ACanvas: TCanvas;
DstX, DstY, DstWidth, DstHeight: integer);
begin
if ACanvas <> nil then
- ACanvas.StretchDraw(Rect(DstX, DstY, DstWidth, DstHeight), Self);
+ // ACanvas.StretchDraw(Rect(DstX, DstY, DstWidth, DstHeight), Self);
+ begin
+ ACanvas.AntialiasingMode:=amOff;
+ ACanvas.CopyRect(Rect(DstX, DstY, DstWidth, DstHeight), Self.Canvas, Rect(0,0,Width,Height));
+ end;
end;
{ TRGB32BitmapCore }
diff --git a/applications/lazimageeditor/lazimageeditor.lpi b/applications/lazimageeditor/lazimageeditor.lpi
index 70653a42f..ce97cdc6c 100644
--- a/applications/lazimageeditor/lazimageeditor.lpi
+++ b/applications/lazimageeditor/lazimageeditor.lpi
@@ -72,7 +72,7 @@
-
+
@@ -168,10 +168,12 @@
+
-
-
+
+
+
@@ -242,8 +244,8 @@
-
-
+
+
@@ -355,9 +357,9 @@
-
+
-
+
@@ -389,7 +391,7 @@
-
+
@@ -430,123 +432,123 @@
-
+
-
+
-
-
+
+
-
-
+
+
-
-
+
+
-
+
-
-
+
+
-
-
+
+
-
-
+
+
-
+
-
-
+
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+