aboutsummaryrefslogtreecommitdiff
path: root/Emby.Drawing/ImageMagick
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2015-05-11 12:32:15 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2015-05-11 12:32:15 -0400
commit5492e34c6d1db3c083dacef546da4a3895186ac2 (patch)
treebb208e339ef82524faa16112655d3a511e47e153 /Emby.Drawing/ImageMagick
parent42b4b03703efe6deac1bcc1622468534ad408650 (diff)
update indexedDb
Diffstat (limited to 'Emby.Drawing/ImageMagick')
-rw-r--r--Emby.Drawing/ImageMagick/ImageMagickEncoder.cs9
-rw-r--r--Emby.Drawing/ImageMagick/StripCollageBuilder.cs64
2 files changed, 26 insertions, 47 deletions
diff --git a/Emby.Drawing/ImageMagick/ImageMagickEncoder.cs b/Emby.Drawing/ImageMagick/ImageMagickEncoder.cs
index 380c56059d..ff4a8f55bc 100644
--- a/Emby.Drawing/ImageMagick/ImageMagickEncoder.cs
+++ b/Emby.Drawing/ImageMagick/ImageMagickEncoder.cs
@@ -1,4 +1,5 @@
-using ImageMagickSharp;
+using System.Linq;
+using ImageMagickSharp;
using MediaBrowser.Common.Configuration;
using MediaBrowser.Controller.Drawing;
using MediaBrowser.Model.Drawing;
@@ -195,15 +196,15 @@ namespace Emby.Drawing.ImageMagick
if (ratio >= 1.4)
{
- new StripCollageBuilder(_appPaths).BuildThumbCollage(options.InputPaths, options.OutputPath, options.Width, options.Height, options.Text);
+ new StripCollageBuilder(_appPaths).BuildThumbCollage(options.InputPaths.ToList(), options.OutputPath, options.Width, options.Height, options.Text);
}
else if (ratio >= .9)
{
- new StripCollageBuilder(_appPaths).BuildSquareCollage(options.InputPaths, options.OutputPath, options.Width, options.Height, options.Text);
+ new StripCollageBuilder(_appPaths).BuildSquareCollage(options.InputPaths.ToList(), options.OutputPath, options.Width, options.Height, options.Text);
}
else
{
- new StripCollageBuilder(_appPaths).BuildPosterCollage(options.InputPaths, options.OutputPath, options.Width, options.Height, options.Text);
+ new StripCollageBuilder(_appPaths).BuildPosterCollage(options.InputPaths.ToList(), options.OutputPath, options.Width, options.Height, options.Text);
}
}
diff --git a/Emby.Drawing/ImageMagick/StripCollageBuilder.cs b/Emby.Drawing/ImageMagick/StripCollageBuilder.cs
index 7cdd0077de..a50a75ccd1 100644
--- a/Emby.Drawing/ImageMagick/StripCollageBuilder.cs
+++ b/Emby.Drawing/ImageMagick/StripCollageBuilder.cs
@@ -2,7 +2,6 @@
using MediaBrowser.Common.Configuration;
using System;
using System.Collections.Generic;
-using System.Linq;
namespace Emby.Drawing.ImageMagick
{
@@ -15,7 +14,7 @@ namespace Emby.Drawing.ImageMagick
_appPaths = appPaths;
}
- public void BuildPosterCollage(IEnumerable<string> paths, string outputPath, int width, int height, string text)
+ public void BuildPosterCollage(List<string> paths, string outputPath, int width, int height, string text)
{
if (!string.IsNullOrWhiteSpace(text))
{
@@ -33,7 +32,7 @@ namespace Emby.Drawing.ImageMagick
}
}
- public void BuildSquareCollage(IEnumerable<string> paths, string outputPath, int width, int height, string text)
+ public void BuildSquareCollage(List<string> paths, string outputPath, int width, int height, string text)
{
if (!string.IsNullOrWhiteSpace(text))
{
@@ -51,7 +50,7 @@ namespace Emby.Drawing.ImageMagick
}
}
- public void BuildThumbCollage(IEnumerable<string> paths, string outputPath, int width, int height, string text)
+ public void BuildThumbCollage(List<string> paths, string outputPath, int width, int height, string text)
{
if (!string.IsNullOrWhiteSpace(text))
{
@@ -69,31 +68,10 @@ namespace Emby.Drawing.ImageMagick
}
}
- internal static string[] ProjectPaths(IEnumerable<string> paths, int count)
+ private MagickWand BuildThumbCollageWandWithText(List<string> paths, string text, int width, int height)
{
- var clone = paths.ToList();
- var list = new List<string>();
-
- while (list.Count < count)
- {
- foreach (var path in clone)
- {
- list.Add(path);
-
- if (list.Count >= count)
- {
- break;
- }
- }
- }
-
- return list.Take(count).ToArray();
- }
-
- private MagickWand BuildThumbCollageWandWithText(IEnumerable<string> paths, string text, int width, int height)
- {
- var inputPaths = ProjectPaths(paths, 8);
- using (var wandImages = new MagickWand(inputPaths))
+ var inputPaths = ImageHelpers.ProjectPaths(paths, 8);
+ using (var wandImages = new MagickWand(inputPaths.ToArray()))
{
var wand = new MagickWand(width, height);
wand.OpenImage("gradient:#111111-#111111");
@@ -165,10 +143,10 @@ namespace Emby.Drawing.ImageMagick
}
}
- private MagickWand BuildPosterCollageWand(IEnumerable<string> paths, int width, int height)
+ private MagickWand BuildPosterCollageWand(List<string> paths, int width, int height)
{
- var inputPaths = ProjectPaths(paths, 4);
- using (var wandImages = new MagickWand(inputPaths))
+ var inputPaths = ImageHelpers.ProjectPaths(paths, 4);
+ using (var wandImages = new MagickWand(inputPaths.ToArray()))
{
var wand = new MagickWand(width, height);
wand.OpenImage("gradient:#111111-#111111");
@@ -230,10 +208,10 @@ namespace Emby.Drawing.ImageMagick
}
}
- private MagickWand BuildPosterCollageWandWithText(IEnumerable<string> paths, string label, int width, int height)
+ private MagickWand BuildPosterCollageWandWithText(List<string> paths, string label, int width, int height)
{
- var inputPaths = ProjectPaths(paths, 4);
- using (var wandImages = new MagickWand(inputPaths))
+ var inputPaths = ImageHelpers.ProjectPaths(paths, 4);
+ using (var wandImages = new MagickWand(inputPaths.ToArray()))
{
var wand = new MagickWand(width, height);
wand.OpenImage("gradient:#111111-#111111");
@@ -305,10 +283,10 @@ namespace Emby.Drawing.ImageMagick
}
}
- private MagickWand BuildThumbCollageWand(IEnumerable<string> paths, int width, int height)
+ private MagickWand BuildThumbCollageWand(List<string> paths, int width, int height)
{
- var inputPaths = ProjectPaths(paths, 8);
- using (var wandImages = new MagickWand(inputPaths))
+ var inputPaths = ImageHelpers.ProjectPaths(paths, 8);
+ using (var wandImages = new MagickWand(inputPaths.ToArray()))
{
var wand = new MagickWand(width, height);
wand.OpenImage("gradient:#111111-#111111");
@@ -370,10 +348,10 @@ namespace Emby.Drawing.ImageMagick
}
}
- private MagickWand BuildSquareCollageWand(IEnumerable<string> paths, int width, int height)
+ private MagickWand BuildSquareCollageWand(List<string> paths, int width, int height)
{
- var inputPaths = ProjectPaths(paths, 4);
- using (var wandImages = new MagickWand(inputPaths))
+ var inputPaths = ImageHelpers.ProjectPaths(paths, 4);
+ using (var wandImages = new MagickWand(inputPaths.ToArray()))
{
var wand = new MagickWand(width, height);
wand.OpenImage("gradient:#111111-#111111");
@@ -435,10 +413,10 @@ namespace Emby.Drawing.ImageMagick
}
}
- private MagickWand BuildSquareCollageWandWithText(IEnumerable<string> paths, string label, int width, int height)
+ private MagickWand BuildSquareCollageWandWithText(List<string> paths, string label, int width, int height)
{
- var inputPaths = ProjectPaths(paths, 4);
- using (var wandImages = new MagickWand(inputPaths))
+ var inputPaths = ImageHelpers.ProjectPaths(paths, 4);
+ using (var wandImages = new MagickWand(inputPaths.ToArray()))
{
var wand = new MagickWand(width, height);
wand.OpenImage("gradient:#111111-#111111");