From 5e10e0ff192de703e8fa18462fa08aa16abac8c4 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Thu, 19 Feb 2015 20:57:10 -0500 Subject: replace System.Drawing with ImageMagick --- .../Drawing/ImageHeader.cs | 29 +++++++--------------- 1 file changed, 9 insertions(+), 20 deletions(-) (limited to 'MediaBrowser.Server.Implementations/Drawing/ImageHeader.cs') diff --git a/MediaBrowser.Server.Implementations/Drawing/ImageHeader.cs b/MediaBrowser.Server.Implementations/Drawing/ImageHeader.cs index e9c67bf48..81d4a786a 100644 --- a/MediaBrowser.Server.Implementations/Drawing/ImageHeader.cs +++ b/MediaBrowser.Server.Implementations/Drawing/ImageHeader.cs @@ -1,4 +1,5 @@ -using MediaBrowser.Common.IO; +using ImageMagickSharp; +using MediaBrowser.Common.IO; using MediaBrowser.Model.Drawing; using MediaBrowser.Model.Logging; using System; @@ -61,27 +62,15 @@ namespace MediaBrowser.Server.Implementations.Drawing logger.Info("Failed to read image header for {0}. Doing it the slow way.", path); } - // Buffer to memory stream to avoid image locking file - using (var fs = fileSystem.GetFileStream(path, FileMode.Open, FileAccess.Read, FileShare.Read)) + using (var wand = new MagickWand(path)) { - using (var memoryStream = new MemoryStream()) - { - fs.CopyTo(memoryStream); - - memoryStream.Position = 0; - - // Co it the old fashioned way - using (var b = System.Drawing.Image.FromStream(memoryStream, true, false)) - { - var size = b.Size; + var img = wand.CurrentImage; - return new ImageSize - { - Width = size.Width, - Height = size.Height - }; - } - } + return new ImageSize + { + Width = img.Width, + Height = img.Height + }; } } -- cgit v1.2.3