diff --git a/build/Build.bat b/build/Build.bat
index 61973a204..f39a94e86 100644
--- a/build/Build.bat
+++ b/build/Build.bat
@@ -1,7 +1,7 @@
@ECHO OFF
-SET version=1.9.3.0
-SET webversion=3.2.7.0
-SET webconfigversion=1.1.2.0
+SET version=2.0.0.0
+SET webversion=4.0.0.0
+SET webconfigversion=2.0.0.0
ECHO Building ImageProcessor %version%, ImageProcess.Web %webversion% and ImageProcess.Web.Config %webconfigversion%
diff --git a/build/NuSpecs/ImageProcessor.Web.Config.nuspec b/build/NuSpecs/ImageProcessor.Web.Config.nuspec
index cb27a3fb2..eb605f2b8 100644
--- a/build/NuSpecs/ImageProcessor.Web.Config.nuspec
+++ b/build/NuSpecs/ImageProcessor.Web.Config.nuspec
@@ -21,19 +21,19 @@ Feedback is always welcome
Image Imaging ASP Performance Processing HttpModule Cache Resize Rotate RoundedCorners Flip Crop Filter Effects Quality Watermark Alpha Vignette Saturation Brightness Contrast Gif Jpg Jpeg Bitmap Png Fluent GDI Gaussian Blur Sharpen Tint Quantizer Animated
-
-
+
+
-
-
+
+
-
-
-
+
+
+
\ No newline at end of file
diff --git a/build/NuSpecs/ImageProcessor.Web.nuspec b/build/NuSpecs/ImageProcessor.Web.nuspec
index 5e640a422..840d438a2 100644
--- a/build/NuSpecs/ImageProcessor.Web.nuspec
+++ b/build/NuSpecs/ImageProcessor.Web.nuspec
@@ -27,10 +27,10 @@ Feedback is always welcome
-
+
-
+
diff --git a/build/NuSpecs/ImageProcessor.nuspec b/build/NuSpecs/ImageProcessor.nuspec
index 80bdd79a1..85b661b2e 100644
--- a/build/NuSpecs/ImageProcessor.nuspec
+++ b/build/NuSpecs/ImageProcessor.nuspec
@@ -25,5 +25,6 @@ Feedback is always welcome.
+
\ No newline at end of file
diff --git a/build/content/ImageProcessor.Web.Config/web.config.transform b/build/content/ImageProcessor.Web.Config/web.config.transform
index c2ed6d5a1..3c88a71b1 100644
--- a/build/content/ImageProcessor.Web.Config/web.config.transform
+++ b/build/content/ImageProcessor.Web.Config/web.config.transform
@@ -2,9 +2,9 @@
-
-
-
+
+
+
@@ -13,8 +13,4 @@
-
-
-
-
diff --git a/build/content/ImageProcessor.Web/web.config.transform b/build/content/ImageProcessor.Web/web.config.transform
index a541ff10e..7d02ee462 100644
--- a/build/content/ImageProcessor.Web/web.config.transform
+++ b/build/content/ImageProcessor.Web/web.config.transform
@@ -7,6 +7,10 @@
+
+
+
+
diff --git a/src/ImageProcessor.Web/NET45/Caching/DiskCache.cs b/src/ImageProcessor.Web/NET45/Caching/DiskCache.cs
index f64fad546..23612916b 100644
--- a/src/ImageProcessor.Web/NET45/Caching/DiskCache.cs
+++ b/src/ImageProcessor.Web/NET45/Caching/DiskCache.cs
@@ -19,7 +19,8 @@ namespace ImageProcessor.Web.Caching
using System.Threading.Tasks;
using System.Web;
using System.Web.Hosting;
- using ImageProcessor.Core.Common.Extensions;
+
+ using ImageProcessor.Common.Extensions;
using ImageProcessor.Web.Configuration;
using ImageProcessor.Web.Helpers;
#endregion
diff --git a/src/ImageProcessor.Web/NET45/Configuration/ImageCacheSection.cs b/src/ImageProcessor.Web/NET45/Configuration/ImageCacheSection.cs
index 27e5320c3..04a550729 100644
--- a/src/ImageProcessor.Web/NET45/Configuration/ImageCacheSection.cs
+++ b/src/ImageProcessor.Web/NET45/Configuration/ImageCacheSection.cs
@@ -15,7 +15,7 @@ namespace ImageProcessor.Web.Configuration
using System.IO;
using System.Xml;
- using ImageProcessor.Core.Common.Extensions;
+ using ImageProcessor.Common.Extensions;
using ImageProcessor.Web.Helpers;
#endregion
diff --git a/src/ImageProcessor.Web/NET45/Configuration/Resources/processing.config b/src/ImageProcessor.Web/NET45/Configuration/Resources/processing.config
index 3d3aec8f8..e1ecdfa59 100644
--- a/src/ImageProcessor.Web/NET45/Configuration/Resources/processing.config
+++ b/src/ImageProcessor.Web/NET45/Configuration/Resources/processing.config
@@ -4,12 +4,13 @@
+
-
+
diff --git a/src/ImageProcessor.Web/NET45/Helpers/CommonParameterParserUtility.cs b/src/ImageProcessor.Web/NET45/Helpers/CommonParameterParserUtility.cs
index 88f935076..ae71ca7ef 100644
--- a/src/ImageProcessor.Web/NET45/Helpers/CommonParameterParserUtility.cs
+++ b/src/ImageProcessor.Web/NET45/Helpers/CommonParameterParserUtility.cs
@@ -14,7 +14,8 @@ namespace ImageProcessor.Web.Helpers
using System.Drawing;
using System.Globalization;
using System.Text.RegularExpressions;
- using ImageProcessor.Core.Common.Extensions;
+
+ using ImageProcessor.Common.Extensions;
using ImageProcessor.Imaging;
///
diff --git a/src/ImageProcessor.Web/NET45/HttpModules/ImageProcessingModule.cs b/src/ImageProcessor.Web/NET45/HttpModules/ImageProcessingModule.cs
index f2bd71ad3..67f3aee5d 100644
--- a/src/ImageProcessor.Web/NET45/HttpModules/ImageProcessingModule.cs
+++ b/src/ImageProcessor.Web/NET45/HttpModules/ImageProcessingModule.cs
@@ -29,7 +29,7 @@ namespace ImageProcessor.Web.HttpModules
using System.Web.Hosting;
using System.Web.Security;
- using ImageProcessor.Core.Common.Extensions;
+ using ImageProcessor.Common.Extensions;
using ImageProcessor.Web.Caching;
using ImageProcessor.Web.Configuration;
using ImageProcessor.Web.Helpers;
diff --git a/src/ImageProcessor.Web/NET45/Processors/Crop.cs b/src/ImageProcessor.Web/NET45/Processors/Crop.cs
index a446e37b8..372d277c3 100644
--- a/src/ImageProcessor.Web/NET45/Processors/Crop.cs
+++ b/src/ImageProcessor.Web/NET45/Processors/Crop.cs
@@ -12,7 +12,8 @@ namespace ImageProcessor.Web.Processors
{
using System.Text;
using System.Text.RegularExpressions;
- using ImageProcessor.Core.Common.Extensions;
+
+ using ImageProcessor.Common.Extensions;
using ImageProcessor.Imaging;
using ImageProcessor.Processors;
diff --git a/src/ImageProcessor.Web/NET45/Processors/Format.cs b/src/ImageProcessor.Web/NET45/Processors/Format.cs
index 436361175..b419f211f 100644
--- a/src/ImageProcessor.Web/NET45/Processors/Format.cs
+++ b/src/ImageProcessor.Web/NET45/Processors/Format.cs
@@ -11,9 +11,12 @@
namespace ImageProcessor.Web.Processors
{
using System;
+ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
+ using System.Web;
+
using ImageProcessor.Configuration;
using ImageProcessor.Imaging.Formats;
using ImageProcessor.Processors;
@@ -135,13 +138,14 @@ namespace ImageProcessor.Web.Processors
identifier = identifier.ToLowerInvariant();
string finalIdentifier = identifier.Equals("png8") ? "png" : identifier;
ISupportedImageFormat newFormat = null;
- ISupportedImageFormat format = ImageProcessorBootstrapper.Instance.SupportedImageFormats
- .FirstOrDefault(f => f.FileExtensions.Any(e => e.Equals(finalIdentifier, StringComparison.InvariantCultureIgnoreCase)));
+ List formats = ImageProcessorBootstrapper.Instance.SupportedImageFormats.ToList();
+ ISupportedImageFormat format = formats.FirstOrDefault(f => f.FileExtensions.Any(e => e.Equals(finalIdentifier, StringComparison.InvariantCultureIgnoreCase)));
if (format != null)
{
// Return a new instance as we want to use instance properties.
newFormat = Activator.CreateInstance(format.GetType()) as ISupportedImageFormat;
+
if (newFormat != null)
{
// I wish this wasn't hard-coded but there's no way I can
diff --git a/src/ImageProcessor.Web/NET45/Processors/Resize.cs b/src/ImageProcessor.Web/NET45/Processors/Resize.cs
index 7d4a06ceb..95d962958 100644
--- a/src/ImageProcessor.Web/NET45/Processors/Resize.cs
+++ b/src/ImageProcessor.Web/NET45/Processors/Resize.cs
@@ -16,7 +16,8 @@ namespace ImageProcessor.Web.Processors
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
- using ImageProcessor.Core.Common.Extensions;
+
+ using ImageProcessor.Common.Extensions;
using ImageProcessor.Imaging;
using ImageProcessor.Processors;
diff --git a/src/ImageProcessor.Web/NET45/Processors/Watermark.cs b/src/ImageProcessor.Web/NET45/Processors/Watermark.cs
index 641131761..27e83e288 100644
--- a/src/ImageProcessor.Web/NET45/Processors/Watermark.cs
+++ b/src/ImageProcessor.Web/NET45/Processors/Watermark.cs
@@ -14,7 +14,8 @@ namespace ImageProcessor.Web.Processors
using System.Globalization;
using System.Linq;
using System.Text.RegularExpressions;
- using ImageProcessor.Core.Common.Extensions;
+
+ using ImageProcessor.Common.Extensions;
using ImageProcessor.Imaging;
using ImageProcessor.Processors;
using ImageProcessor.Web.Helpers;
diff --git a/src/ImageProcessor.Web/NET45/Properties/AssemblyInfo.cs b/src/ImageProcessor.Web/NET45/Properties/AssemblyInfo.cs
index 8763d6242..d5ad131ff 100644
--- a/src/ImageProcessor.Web/NET45/Properties/AssemblyInfo.cs
+++ b/src/ImageProcessor.Web/NET45/Properties/AssemblyInfo.cs
@@ -35,5 +35,5 @@ using ImageProcessor.Web.HttpModules;
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
-[assembly: AssemblyVersion("3.2.7.0")]
-[assembly: AssemblyFileVersion("3.2.7.0")]
\ No newline at end of file
+[assembly: AssemblyVersion("4.0.0.0")]
+[assembly: AssemblyFileVersion("4.0.0.0")]
\ No newline at end of file
diff --git a/src/ImageProcessor/Core/Common/Exceptions/ImageFormatException.cs b/src/ImageProcessor/Common/Exceptions/ImageFormatException.cs
similarity index 94%
rename from src/ImageProcessor/Core/Common/Exceptions/ImageFormatException.cs
rename to src/ImageProcessor/Common/Exceptions/ImageFormatException.cs
index e858b6fcc..992bd9737 100644
--- a/src/ImageProcessor/Core/Common/Exceptions/ImageFormatException.cs
+++ b/src/ImageProcessor/Common/Exceptions/ImageFormatException.cs
@@ -8,10 +8,9 @@
//
// --------------------------------------------------------------------------------------------------------------------
-namespace ImageProcessor.Core.Common.Exceptions
+namespace ImageProcessor.Common.Exceptions
{
using System;
- using System.Runtime.Serialization;
///
/// The exception that is thrown when loading the supported image format types has failed.
diff --git a/src/ImageProcessor/Core/Common/Exceptions/ImageProcessingException.cs b/src/ImageProcessor/Common/Exceptions/ImageProcessingException.cs
similarity index 97%
rename from src/ImageProcessor/Core/Common/Exceptions/ImageProcessingException.cs
rename to src/ImageProcessor/Common/Exceptions/ImageProcessingException.cs
index db1adf2a6..44579604a 100644
--- a/src/ImageProcessor/Core/Common/Exceptions/ImageProcessingException.cs
+++ b/src/ImageProcessor/Common/Exceptions/ImageProcessingException.cs
@@ -8,7 +8,7 @@
//
// --------------------------------------------------------------------------------------------------------------------
-namespace ImageProcessor.Core.Common.Exceptions
+namespace ImageProcessor.Common.Exceptions
{
using System;
diff --git a/src/ImageProcessor/Core/Common/Extensions/DoubleExtensions.cs b/src/ImageProcessor/Common/Extensions/DoubleExtensions.cs
similarity index 96%
rename from src/ImageProcessor/Core/Common/Extensions/DoubleExtensions.cs
rename to src/ImageProcessor/Common/Extensions/DoubleExtensions.cs
index a8980c5c6..acc5b12c3 100644
--- a/src/ImageProcessor/Core/Common/Extensions/DoubleExtensions.cs
+++ b/src/ImageProcessor/Common/Extensions/DoubleExtensions.cs
@@ -8,7 +8,7 @@
//
// --------------------------------------------------------------------------------------------------------------------
-namespace ImageProcessor.Core.Common.Extensions
+namespace ImageProcessor.Common.Extensions
{
///
/// Encapsulates a series of time saving extension methods to the class.
diff --git a/src/ImageProcessor/Core/Common/Extensions/IntegerExtensions.cs b/src/ImageProcessor/Common/Extensions/IntegerExtensions.cs
similarity index 97%
rename from src/ImageProcessor/Core/Common/Extensions/IntegerExtensions.cs
rename to src/ImageProcessor/Common/Extensions/IntegerExtensions.cs
index c4aa90bd8..e04798c0b 100644
--- a/src/ImageProcessor/Core/Common/Extensions/IntegerExtensions.cs
+++ b/src/ImageProcessor/Common/Extensions/IntegerExtensions.cs
@@ -8,7 +8,7 @@
//
// --------------------------------------------------------------------------------------------------------------------
-namespace ImageProcessor.Core.Common.Extensions
+namespace ImageProcessor.Common.Extensions
{
using System.Globalization;
diff --git a/src/ImageProcessor/Core/Common/Extensions/StringExtensions.cs b/src/ImageProcessor/Common/Extensions/StringExtensions.cs
similarity index 98%
rename from src/ImageProcessor/Core/Common/Extensions/StringExtensions.cs
rename to src/ImageProcessor/Common/Extensions/StringExtensions.cs
index a60590f66..fd7d54139 100644
--- a/src/ImageProcessor/Core/Common/Extensions/StringExtensions.cs
+++ b/src/ImageProcessor/Common/Extensions/StringExtensions.cs
@@ -8,10 +8,8 @@
//
// --------------------------------------------------------------------------------------------------------------------
-namespace ImageProcessor.Core.Common.Extensions
+namespace ImageProcessor.Common.Extensions
{
- #region Using
-
using System;
using System.Globalization;
using System.Linq;
@@ -19,8 +17,6 @@ namespace ImageProcessor.Core.Common.Extensions
using System.Text;
using System.Text.RegularExpressions;
- #endregion
-
///
/// Encapsulates a series of time saving extension methods to the class.
///
diff --git a/src/ImageProcessor/Configuration/ImageProcessorBootstrapper.cs b/src/ImageProcessor/Configuration/ImageProcessorBootstrapper.cs
index 594ce5185..e1d59b7f6 100644
--- a/src/ImageProcessor/Configuration/ImageProcessorBootstrapper.cs
+++ b/src/ImageProcessor/Configuration/ImageProcessorBootstrapper.cs
@@ -13,7 +13,8 @@ namespace ImageProcessor.Configuration
using System;
using System.Collections.Generic;
using System.Linq;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
using ImageProcessor.Imaging.Formats;
///
diff --git a/src/ImageProcessor/ImageFactory.cs b/src/ImageProcessor/ImageFactory.cs
index 97e749cbc..db5e38beb 100644
--- a/src/ImageProcessor/ImageFactory.cs
+++ b/src/ImageProcessor/ImageFactory.cs
@@ -17,7 +17,8 @@ namespace ImageProcessor
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
using ImageProcessor.Imaging;
using ImageProcessor.Imaging.Filters;
using ImageProcessor.Imaging.Formats;
diff --git a/src/ImageProcessor/ImageProcessor.csproj b/src/ImageProcessor/ImageProcessor.csproj
index 7e0c0b4f4..cab9513c1 100644
--- a/src/ImageProcessor/ImageProcessor.csproj
+++ b/src/ImageProcessor/ImageProcessor.csproj
@@ -60,12 +60,12 @@
-
-
+
+
-
-
-
+
+
+
diff --git a/src/ImageProcessor/Imaging/Convolution.cs b/src/ImageProcessor/Imaging/Convolution.cs
index 26ff21f6f..bc8496ab2 100644
--- a/src/ImageProcessor/Imaging/Convolution.cs
+++ b/src/ImageProcessor/Imaging/Convolution.cs
@@ -15,7 +15,7 @@ namespace ImageProcessor.Imaging
using System.Drawing.Imaging;
using System.Runtime.InteropServices;
- using ImageProcessor.Core.Common.Extensions;
+ using ImageProcessor.Common.Extensions;
///
/// Provides methods for applying blurring and sharpening effects to an image..
diff --git a/src/ImageProcessor/Imaging/Filters/ComicMatrixFilter.cs b/src/ImageProcessor/Imaging/Filters/ComicMatrixFilter.cs
index 872551b56..7d90d0bf9 100644
--- a/src/ImageProcessor/Imaging/Filters/ComicMatrixFilter.cs
+++ b/src/ImageProcessor/Imaging/Filters/ComicMatrixFilter.cs
@@ -17,7 +17,9 @@ namespace ImageProcessor.Imaging.Filters
using System.Drawing.Drawing2D;
using System.Drawing.Imaging;
using System.Runtime.InteropServices;
- using ImageProcessor.Core.Common.Extensions;
+
+ using ImageProcessor.Common.Extensions;
+
#endregion
///
diff --git a/src/ImageProcessor/Imaging/Formats/WebPFormat.cs b/src/ImageProcessor/Imaging/Formats/WebPFormat.cs
index 15e4e4313..d0bff7a19 100644
--- a/src/ImageProcessor/Imaging/Formats/WebPFormat.cs
+++ b/src/ImageProcessor/Imaging/Formats/WebPFormat.cs
@@ -21,7 +21,7 @@ namespace ImageProcessor.Imaging.Formats
using System.Runtime.InteropServices;
using System.Text;
- using ImageProcessor.Core.Common.Exceptions;
+ using ImageProcessor.Common.Exceptions;
///
/// Provides the necessary information to support webp images.
@@ -163,6 +163,10 @@ namespace ImageProcessor.Imaging.Formats
memoryStream.Position = stream.Position = 0;
}
}
+ else
+ {
+ throw new ImageFormatException("Unable to encode WebP image.");
+ }
return image;
}
@@ -183,36 +187,52 @@ namespace ImageProcessor.Imaging.Formats
IntPtr ptrData = pinnedWebP.AddrOfPinnedObject();
uint dataSize = (uint)webpData.Length;
+ Bitmap bitmap = null;
+ BitmapData bitmapData = null;
+ IntPtr outputBuffer = IntPtr.Zero;
int width;
int height;
if (WebPGetInfo(ptrData, dataSize, out width, out height) != 1)
{
- throw new ImageFormatException("WebP image is corrupted.");
+ throw new ImageFormatException("WebP image header is corrupted.");
}
- // Create a BitmapData and Lock all pixels to be written
- Bitmap bitmap = new Bitmap(width, height, PixelFormat.Format32bppArgb);
- BitmapData bitmapData = bitmap.LockBits(new Rectangle(0, 0, bitmap.Width, bitmap.Height), ImageLockMode.WriteOnly, bitmap.PixelFormat);
+ try
+ {
+ // Create a BitmapData and Lock all pixels to be written
+ bitmap = new Bitmap(width, height, PixelFormat.Format32bppArgb);
+ bitmapData = bitmap.LockBits(new Rectangle(0, 0, bitmap.Width, bitmap.Height), ImageLockMode.WriteOnly, bitmap.PixelFormat);
- // Allocate memory for uncompress image
- int outputBufferSize = bitmapData.Stride * height;
- IntPtr outputBuffer = Marshal.AllocHGlobal(outputBufferSize);
+ // Allocate memory for uncompress image
+ int outputBufferSize = bitmapData.Stride * height;
+ outputBuffer = Marshal.AllocHGlobal(outputBufferSize);
- // Uncompress the image
- outputBuffer = WebPDecodeBGRAInto(ptrData, dataSize, outputBuffer, outputBufferSize, bitmapData.Stride);
+ // Uncompress the image
+ outputBuffer = WebPDecodeBGRAInto(ptrData, dataSize, outputBuffer, outputBufferSize, bitmapData.Stride);
- // Write image to bitmap using Marshal
- byte[] buffer = new byte[outputBufferSize];
- Marshal.Copy(outputBuffer, buffer, 0, outputBufferSize);
- Marshal.Copy(buffer, 0, bitmapData.Scan0, outputBufferSize);
+ if (bitmapData.Scan0 != outputBuffer)
+ {
+ throw new ImageFormatException("Failed to decode WebP image with error " + (long)outputBuffer);
+ }
- // Unlock the pixels
- bitmap.UnlockBits(bitmapData);
+ // Write image to bitmap using Marshal
+ byte[] buffer = new byte[outputBufferSize];
+ Marshal.Copy(outputBuffer, buffer, 0, outputBufferSize);
+ Marshal.Copy(buffer, 0, bitmapData.Scan0, outputBufferSize);
+ }
+ finally
+ {
+ // Unlock the pixels
+ if (bitmap != null)
+ {
+ bitmap.UnlockBits(bitmapData);
+ }
- // Free memory
- pinnedWebP.Free();
- Marshal.FreeHGlobal(outputBuffer);
+ // Free memory
+ pinnedWebP.Free();
+ Marshal.FreeHGlobal(outputBuffer);
+ }
return bitmap;
}
@@ -235,29 +255,34 @@ namespace ImageProcessor.Imaging.Formats
private static bool EncodeLossly(Bitmap bitmap, int quality, out byte[] webpData)
{
webpData = null;
+ BitmapData bmpData = bitmap.LockBits(new Rectangle(0, 0, bitmap.Width, bitmap.Height), ImageLockMode.ReadOnly, PixelFormat.Format32bppArgb);
+ IntPtr unmanagedData = IntPtr.Zero;
+ bool encoded;
try
{
- BitmapData bmpData = bitmap.LockBits(new Rectangle(0, 0, bitmap.Width, bitmap.Height), ImageLockMode.ReadOnly, PixelFormat.Format32bppArgb);
- IntPtr unmanagedData;
+ // Attempt to lossy encode the image.
int size = WebPEncodeBGRA(bmpData.Scan0, bitmap.Width, bitmap.Height, bmpData.Stride, quality, out unmanagedData);
// Copy image compress data to output array
webpData = new byte[size];
Marshal.Copy(unmanagedData, webpData, 0, size);
-
+ encoded = true;
+ }
+ catch
+ {
+ encoded = false;
+ }
+ finally
+ {
// Unlock the pixels
bitmap.UnlockBits(bmpData);
// Free memory
WebPFree(unmanagedData);
-
- return true;
- }
- catch
- {
- return false;
}
+
+ return encoded;
}
///
@@ -335,13 +360,13 @@ namespace ImageProcessor.Imaging.Formats
///
/// Frees the unmanaged memory.
///
- ///
+ ///
/// The pointer.
///
///
/// 1 if success, otherwise error code returned in the case of (a) error(s).
///
[DllImport("libwebp.dll", CallingConvention = CallingConvention.Cdecl)]
- private static extern int WebPFree(IntPtr p);
+ private static extern int WebPFree(IntPtr pointer);
}
}
\ No newline at end of file
diff --git a/src/ImageProcessor/Processors/Alpha.cs b/src/ImageProcessor/Processors/Alpha.cs
index e921233e8..a27e5f6f9 100644
--- a/src/ImageProcessor/Processors/Alpha.cs
+++ b/src/ImageProcessor/Processors/Alpha.cs
@@ -14,7 +14,8 @@ namespace ImageProcessor.Processors
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Imaging;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
///
/// Encapsulates methods to change the alpha component of the image to effect its transparency.
diff --git a/src/ImageProcessor/Processors/AutoRotate.cs b/src/ImageProcessor/Processors/AutoRotate.cs
index 1fcf81f48..7368d2574 100644
--- a/src/ImageProcessor/Processors/AutoRotate.cs
+++ b/src/ImageProcessor/Processors/AutoRotate.cs
@@ -14,7 +14,8 @@ namespace ImageProcessor.Processors
using System;
using System.Collections.Generic;
using System.Drawing;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
using ImageProcessor.Imaging;
///
diff --git a/src/ImageProcessor/Processors/BackgroundColor.cs b/src/ImageProcessor/Processors/BackgroundColor.cs
index 6d785f1f3..a41396f90 100644
--- a/src/ImageProcessor/Processors/BackgroundColor.cs
+++ b/src/ImageProcessor/Processors/BackgroundColor.cs
@@ -13,7 +13,8 @@ namespace ImageProcessor.Processors
using System;
using System.Collections.Generic;
using System.Drawing;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
///
/// Changes the background color of an image.
diff --git a/src/ImageProcessor/Processors/Brightness.cs b/src/ImageProcessor/Processors/Brightness.cs
index 4df039a07..51fb2be41 100644
--- a/src/ImageProcessor/Processors/Brightness.cs
+++ b/src/ImageProcessor/Processors/Brightness.cs
@@ -14,7 +14,8 @@ namespace ImageProcessor.Processors
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Imaging;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
///
/// Encapsulates methods to change the brightness component of the image.
diff --git a/src/ImageProcessor/Processors/Contrast.cs b/src/ImageProcessor/Processors/Contrast.cs
index a6fec199d..8289b4537 100644
--- a/src/ImageProcessor/Processors/Contrast.cs
+++ b/src/ImageProcessor/Processors/Contrast.cs
@@ -14,7 +14,8 @@ namespace ImageProcessor.Processors
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Imaging;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
///
/// Encapsulates methods to change the contrast component of the image.
diff --git a/src/ImageProcessor/Processors/Crop.cs b/src/ImageProcessor/Processors/Crop.cs
index 2b0f3c417..d0b8cb9ae 100644
--- a/src/ImageProcessor/Processors/Crop.cs
+++ b/src/ImageProcessor/Processors/Crop.cs
@@ -15,7 +15,8 @@ namespace ImageProcessor.Processors
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Imaging;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
using ImageProcessor.Imaging;
///
diff --git a/src/ImageProcessor/Processors/Filter.cs b/src/ImageProcessor/Processors/Filter.cs
index f98a041c0..e8130afa3 100644
--- a/src/ImageProcessor/Processors/Filter.cs
+++ b/src/ImageProcessor/Processors/Filter.cs
@@ -14,7 +14,8 @@ namespace ImageProcessor.Processors
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Imaging;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
using ImageProcessor.Imaging.Filters;
///
diff --git a/src/ImageProcessor/Processors/Flip.cs b/src/ImageProcessor/Processors/Flip.cs
index 5f57e5c9c..839edc34d 100644
--- a/src/ImageProcessor/Processors/Flip.cs
+++ b/src/ImageProcessor/Processors/Flip.cs
@@ -13,7 +13,8 @@ namespace ImageProcessor.Processors
using System;
using System.Collections.Generic;
using System.Drawing;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
///
/// Flips an image horizontally or vertically.
diff --git a/src/ImageProcessor/Processors/Format.cs b/src/ImageProcessor/Processors/Format.cs
index 2f3af85a1..2695180af 100644
--- a/src/ImageProcessor/Processors/Format.cs
+++ b/src/ImageProcessor/Processors/Format.cs
@@ -13,7 +13,8 @@ namespace ImageProcessor.Processors
using System;
using System.Collections.Generic;
using System.Drawing;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
using ImageProcessor.Imaging.Formats;
///
diff --git a/src/ImageProcessor/Processors/GaussianBlur.cs b/src/ImageProcessor/Processors/GaussianBlur.cs
index 3e2959094..1ddf9e787 100644
--- a/src/ImageProcessor/Processors/GaussianBlur.cs
+++ b/src/ImageProcessor/Processors/GaussianBlur.cs
@@ -13,7 +13,8 @@ namespace ImageProcessor.Processors
using System;
using System.Collections.Generic;
using System.Drawing;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
using ImageProcessor.Imaging;
///
diff --git a/src/ImageProcessor/Processors/GaussianSharpen.cs b/src/ImageProcessor/Processors/GaussianSharpen.cs
index 2949a899a..8aaf84e5d 100644
--- a/src/ImageProcessor/Processors/GaussianSharpen.cs
+++ b/src/ImageProcessor/Processors/GaussianSharpen.cs
@@ -13,7 +13,8 @@ namespace ImageProcessor.Processors
using System;
using System.Collections.Generic;
using System.Drawing;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
using ImageProcessor.Imaging;
///
diff --git a/src/ImageProcessor/Processors/Quality.cs b/src/ImageProcessor/Processors/Quality.cs
index 9d53ccb9e..015c519eb 100644
--- a/src/ImageProcessor/Processors/Quality.cs
+++ b/src/ImageProcessor/Processors/Quality.cs
@@ -13,7 +13,8 @@ namespace ImageProcessor.Processors
using System;
using System.Collections.Generic;
using System.Drawing;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
///
/// Encapsulates methods to change the quality component of the image.
diff --git a/src/ImageProcessor/Processors/Resize.cs b/src/ImageProcessor/Processors/Resize.cs
index f52587492..3495dd3a0 100644
--- a/src/ImageProcessor/Processors/Resize.cs
+++ b/src/ImageProcessor/Processors/Resize.cs
@@ -17,7 +17,8 @@ namespace ImageProcessor.Processors
using System.Drawing.Imaging;
using System.Globalization;
using System.Linq;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
using ImageProcessor.Imaging;
///
diff --git a/src/ImageProcessor/Processors/Rotate.cs b/src/ImageProcessor/Processors/Rotate.cs
index 4e1bd8142..70fabd1cc 100644
--- a/src/ImageProcessor/Processors/Rotate.cs
+++ b/src/ImageProcessor/Processors/Rotate.cs
@@ -14,7 +14,8 @@ namespace ImageProcessor.Processors
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Drawing2D;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
///
/// Encapsulates methods to rotate an image.
diff --git a/src/ImageProcessor/Processors/RoundedCorners.cs b/src/ImageProcessor/Processors/RoundedCorners.cs
index ebd26ef24..5df2367fe 100644
--- a/src/ImageProcessor/Processors/RoundedCorners.cs
+++ b/src/ImageProcessor/Processors/RoundedCorners.cs
@@ -14,7 +14,8 @@ namespace ImageProcessor.Processors
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Drawing2D;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
using ImageProcessor.Imaging;
///
diff --git a/src/ImageProcessor/Processors/Saturation.cs b/src/ImageProcessor/Processors/Saturation.cs
index f0e245821..b8d2a0819 100644
--- a/src/ImageProcessor/Processors/Saturation.cs
+++ b/src/ImageProcessor/Processors/Saturation.cs
@@ -14,7 +14,8 @@ namespace ImageProcessor.Processors
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Imaging;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
///
/// Encapsulates methods to change the saturation component of the image.
diff --git a/src/ImageProcessor/Processors/Tint.cs b/src/ImageProcessor/Processors/Tint.cs
index 9943a0cc3..603c7fd11 100644
--- a/src/ImageProcessor/Processors/Tint.cs
+++ b/src/ImageProcessor/Processors/Tint.cs
@@ -15,7 +15,8 @@ namespace ImageProcessor.Processors
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Imaging;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
///
/// Tints an image with the given color.
diff --git a/src/ImageProcessor/Processors/Vignette.cs b/src/ImageProcessor/Processors/Vignette.cs
index 9d4f12241..3be2beee1 100644
--- a/src/ImageProcessor/Processors/Vignette.cs
+++ b/src/ImageProcessor/Processors/Vignette.cs
@@ -14,7 +14,8 @@ namespace ImageProcessor.Processors
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Drawing2D;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
///
/// Encapsulates methods with which to add a vignette image effect to an image.
diff --git a/src/ImageProcessor/Processors/Watermark.cs b/src/ImageProcessor/Processors/Watermark.cs
index 9ce4771ff..e06eb812a 100644
--- a/src/ImageProcessor/Processors/Watermark.cs
+++ b/src/ImageProcessor/Processors/Watermark.cs
@@ -14,7 +14,8 @@ namespace ImageProcessor.Processors
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Text;
- using ImageProcessor.Core.Common.Exceptions;
+
+ using ImageProcessor.Common.Exceptions;
using ImageProcessor.Imaging;
///
diff --git a/src/ImageProcessor/Properties/AssemblyInfo.cs b/src/ImageProcessor/Properties/AssemblyInfo.cs
index bea6c1401..840a38ec8 100644
--- a/src/ImageProcessor/Properties/AssemblyInfo.cs
+++ b/src/ImageProcessor/Properties/AssemblyInfo.cs
@@ -32,6 +32,6 @@ using System.Security;
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
-[assembly: AssemblyVersion("1.9.3.0")]
-[assembly: AssemblyFileVersion("1.9.3.0")]
+[assembly: AssemblyVersion("2.0.0.0")]
+[assembly: AssemblyFileVersion("2.0.0.0")]
diff --git a/src/TestWebsites/NET4/config/imageprocessor/processing.config b/src/TestWebsites/NET4/config/imageprocessor/processing.config
index 85283e9f2..9628cf652 100644
--- a/src/TestWebsites/NET4/config/imageprocessor/processing.config
+++ b/src/TestWebsites/NET4/config/imageprocessor/processing.config
@@ -4,41 +4,42 @@
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
+
-
-
+
+
-
-
-
+
+
-
-
-
-
-
+
+
+
+
+
+
diff --git a/src/TestWebsites/NET45/Test_Website_NET45/Views/Web.config b/src/TestWebsites/NET45/Test_Website_NET45/Views/Web.config
index 826ce19e8..3d9efc26a 100644
--- a/src/TestWebsites/NET45/Test_Website_NET45/Views/Web.config
+++ b/src/TestWebsites/NET45/Test_Website_NET45/Views/Web.config
@@ -45,11 +45,11 @@
+
-
diff --git a/src/TestWebsites/NET45/Test_Website_NET45/Web.config b/src/TestWebsites/NET45/Test_Website_NET45/Web.config
index d20021463..7f87cedd1 100644
--- a/src/TestWebsites/NET45/Test_Website_NET45/Web.config
+++ b/src/TestWebsites/NET45/Test_Website_NET45/Web.config
@@ -44,10 +44,15 @@
+
+
+
+
+
diff --git a/src/TestWebsites/NET45/Test_Website_NET45/config/imageprocessor/processing.config b/src/TestWebsites/NET45/Test_Website_NET45/config/imageprocessor/processing.config
index 6d9f621d1..2dc2d374e 100644
--- a/src/TestWebsites/NET45/Test_Website_NET45/config/imageprocessor/processing.config
+++ b/src/TestWebsites/NET45/Test_Website_NET45/config/imageprocessor/processing.config
@@ -3,6 +3,8 @@
+
+
diff --git a/src/TestWebsites/NET45/Test_Website_NET45/config/imageprocessor/security.config b/src/TestWebsites/NET45/Test_Website_NET45/config/imageprocessor/security.config
index 78b957605..d4781f99c 100644
--- a/src/TestWebsites/NET45/Test_Website_NET45/config/imageprocessor/security.config
+++ b/src/TestWebsites/NET45/Test_Website_NET45/config/imageprocessor/security.config
@@ -1,9 +1,9 @@
-
+
-
+