From 8d15f6df638f3eaa8ef9f3519deae9ed37535a33 Mon Sep 17 00:00:00 2001 From: Jaex Date: Sun, 15 Nov 2020 18:56:11 +0300 Subject: [PATCH] Added tile option to "Image" image effect --- ShareX.ImageEffectsLib/Drawings/DrawImage.cs | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/ShareX.ImageEffectsLib/Drawings/DrawImage.cs b/ShareX.ImageEffectsLib/Drawings/DrawImage.cs index a134c6476..7275e1200 100644 --- a/ShareX.ImageEffectsLib/Drawings/DrawImage.cs +++ b/ShareX.ImageEffectsLib/Drawings/DrawImage.cs @@ -52,6 +52,9 @@ public class DrawImage : ImageEffect [DefaultValue(typeof(Size), "0, 0")] public Size Size { get; set; } + [DefaultValue(false)] + public bool Tile { get; set; } + [DefaultValue(false), Description("If image watermark size bigger than source image then don't draw it.")] public bool AutoHide { get; set; } @@ -135,7 +138,15 @@ public override Bitmap Apply(Bitmap bmp) g.PixelOffsetMode = PixelOffsetMode.Half; g.CompositingMode = CompositingMode; - if (Opacity < 100) + if (Tile) + { + using (TextureBrush brush = new TextureBrush(bmpWatermark, WrapMode.Tile)) + { + brush.TranslateTransform(imageRectangle.X, imageRectangle.Y); + g.FillRectangle(brush, imageRectangle); + } + } + else if (Opacity < 100) { using (ImageAttributes ia = new ImageAttributes()) {