diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2017-05-17 14:18:18 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2017-05-17 14:18:18 -0400 |
| commit | 9cd2d793be694d680aceae3e045b9cda9af89e69 (patch) | |
| tree | 4a030ba94056349e1be4194f4622e001fedb02e5 /Emby.Drawing.ImageMagick/ImageMagickEncoder.cs | |
| parent | 1be515ddf7183bf716d5cf67c2cbc3f3a22d7fdf (diff) | |
update image encoding
Diffstat (limited to 'Emby.Drawing.ImageMagick/ImageMagickEncoder.cs')
| -rw-r--r-- | Emby.Drawing.ImageMagick/ImageMagickEncoder.cs | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/Emby.Drawing.ImageMagick/ImageMagickEncoder.cs b/Emby.Drawing.ImageMagick/ImageMagickEncoder.cs index 13bde3ca5..4c911cc7a 100644 --- a/Emby.Drawing.ImageMagick/ImageMagickEncoder.cs +++ b/Emby.Drawing.ImageMagick/ImageMagickEncoder.cs @@ -130,7 +130,7 @@ namespace Emby.Drawing.ImageMagick string.Equals(ext, ".webp", StringComparison.OrdinalIgnoreCase); } - public void EncodeImage(string inputPath, ImageSize? originalImageSize, string outputPath, bool autoOrient, int quality, ImageProcessingOptions options, ImageFormat selectedOutputFormat) + public string EncodeImage(string inputPath, DateTime dateModified, string outputPath, bool autoOrient, int quality, ImageProcessingOptions options, ImageFormat selectedOutputFormat) { // Even if the caller specified 100, don't use it because it takes forever quality = Math.Min(quality, 99); @@ -144,9 +144,13 @@ namespace Emby.Drawing.ImageMagick originalImage.CurrentImage.TrimImage(10); } - if (options.CropWhiteSpace || !originalImageSize.HasValue) + var originalImageSize = new ImageSize(originalImage.CurrentImage.Width, originalImage.CurrentImage.Height); + ImageHelper.SaveImageSize(inputPath, dateModified, originalImageSize); + + if (!options.CropWhiteSpace && options.HasDefaultOptions(inputPath, originalImageSize)) { - originalImageSize = new ImageSize(originalImage.CurrentImage.Width, originalImage.CurrentImage.Height); + // Just spit out the original file if all the options are default + return inputPath; } var newImageSize = ImageHelper.GetNewImageSize(options, originalImageSize); @@ -174,10 +178,8 @@ namespace Emby.Drawing.ImageMagick { using (var originalImage = new MagickWand(inputPath)) { - if (options.CropWhiteSpace || !originalImageSize.HasValue) - { - originalImageSize = new ImageSize(originalImage.CurrentImage.Width, originalImage.CurrentImage.Height); - } + var originalImageSize = new ImageSize(originalImage.CurrentImage.Width, originalImage.CurrentImage.Height); + ImageHelper.SaveImageSize(inputPath, dateModified, originalImageSize); var newImageSize = ImageHelper.GetNewImageSize(options, originalImageSize); @@ -205,6 +207,8 @@ namespace Emby.Drawing.ImageMagick } } } + + return outputPath; } private void AddForegroundLayer(MagickWand wand, ImageProcessingOptions options) |
