mirror of
https://github.com/ShareX/ShareX.git
synced 2024-06-24 17:20:58 +12:00
Small changes to resize
This commit is contained in:
parent
c9116cc3db
commit
2fac39d779
|
@ -167,14 +167,4 @@ public enum HotkeyStatus
|
|||
Failed,
|
||||
NotConfigured
|
||||
}
|
||||
|
||||
public enum ResizeMode
|
||||
{
|
||||
[Description("Resizes all images to the specified size.")]
|
||||
ResizeAll,
|
||||
[Description("Only resize image if it is bigger than specified size.")]
|
||||
ResizeIfBigger,
|
||||
[Description("Only resize image if it is smaller than specified size.")]
|
||||
ResizeIfSmaller
|
||||
}
|
||||
}
|
|
@ -23,6 +23,8 @@
|
|||
|
||||
#endregion License Information (GPL v3)
|
||||
|
||||
using System.ComponentModel;
|
||||
|
||||
namespace ShareX.ImageEffectsLib
|
||||
{
|
||||
public enum WatermarkType
|
||||
|
@ -30,4 +32,14 @@ public enum WatermarkType
|
|||
Text,
|
||||
Image
|
||||
}
|
||||
|
||||
public enum ResizeMode
|
||||
{
|
||||
[Description("Resizes all images to the specified size.")]
|
||||
ResizeAll,
|
||||
[Description("Only resize image if it is bigger than specified size.")]
|
||||
ResizeIfBigger,
|
||||
[Description("Only resize image if it is smaller than specified size.")]
|
||||
ResizeIfSmaller
|
||||
}
|
||||
}
|
|
@ -37,8 +37,8 @@ public class Resize : ImageEffect
|
|||
[DefaultValue(0), Description("Use height as 0 to automatically adjust height to maintain aspect ratio.")]
|
||||
public int Height { get; set; }
|
||||
|
||||
[DefaultValue(ResizeMode.ResizeAll)]
|
||||
public ResizeMode Mode { get; set; }
|
||||
[DefaultValue(ResizeMode.ResizeAll)]
|
||||
public ResizeMode Mode { get; set; }
|
||||
|
||||
public Resize()
|
||||
{
|
||||
|
@ -52,8 +52,11 @@ public override Image Apply(Image img)
|
|||
int width = Width <= 0 ? (int)((float)Height / img.Height * img.Width) : Width;
|
||||
int height = Height <= 0 ? (int)((float)Width / img.Width * img.Height) : Height;
|
||||
|
||||
if (Mode == ResizeMode.ResizeIfBigger && img.Width <= width && img.Height <= height) return img;
|
||||
if (Mode == ResizeMode.ResizeIfSmaller && img.Width >= width && img.Height >= height) return img;
|
||||
if ((Mode == ResizeMode.ResizeIfBigger && img.Width <= width && img.Height <= height) ||
|
||||
(Mode == ResizeMode.ResizeIfSmaller && img.Width >= width && img.Height >= height))
|
||||
{
|
||||
return img;
|
||||
}
|
||||
|
||||
return ImageHelpers.ResizeImage(img, width, height);
|
||||
}
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
/*
|
||||
ShareX - A program that allows you to take screenshots and share any file type
|
||||
Copyright (c) 2007-2016 ShareX Team
|
||||
Copyright (c) 2007-2017 ShareX Team
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License
|
||||
|
|
Loading…
Reference in a new issue