ImageUltimate is the fastest and easiest ASP.NET image resizer which supports ASP.NET Core 2.0+, ASP.NET MVC 3+ and ASP.NET WebForms 4+ web applications/web sites.
ImageUltimate can also be used with .NET Core 2.0+ and .NET Framework 4.0+ console/desktop applications for conversion between several image formats.
- Can load and save many image file formats (raster, vector and camera raw).
- Provides a fluent interface for easily chaining image manipulation commands.
- Vastly faster (10x) than System.Drawing namespace and optimized specifically for web use.
Minimal memory usage and the ability to process very large images in a fast manner.
- Provides detailed information about an image file like format, size, DPI, pixel format and metadata like EXIF and IPTC.
- Fast thumbnail generation, smartly looks for a EXIF thumbnail, removes black stripes above and below it and
resizes it down further if needed.
- Provides these image transforms: Resize, LiquidResize (seam carving), Crop, TrimBorders, Rotate, Flip.
- Provides these image color/tone corrections and filters: Brightness, Contrast, Enhance, Blur, Sharpen.
- Caches generated images both on server and browser with a smart versioning algorithm. A unique and browser-cacheable url is generated according to the chained commands and whenever you change these commands (or modify the source image externally), the url will vary and this will cause browser to automatically detect changes (no need to press F5).
- Generates SEO friendly urls. By default the file name of the source image is used but it's possible to override this file name for SEO purposes.
- Single managed DLL (works both on 32-bit and 64-bit) for easy deployment and no dependencies. No messy Web.config settings. Just drop it in your bin folder and you are ready to go.
- Strongly-typed API for web, no need to learn and memorize messy url querystring parameters, just chain commands with the help of intellisense.
ASP.NET MVC usage example:
@this.ImageTag("Image1.jpg", task => task.ResizeWidth(300))
ASP.NET WebForms usage example:
<%=this.ImageTag("Image1.jpg", task => task.ResizeWidth(300)) %>
General usage examples:
using (var imageTask = new ImageTask(@"C:\Pictures\Picture1.jpg"))
Note: This package contains a fully working version of the product, however without a license key it will run in trial mode. This means after 30 days, the generated images will be watermarked with a red "ImageUltimate" text at the bottom right corner.
See the version list below for details.
Install-Package GleamTech.ImageUltimate -Version 4.6.0
dotnet add package GleamTech.ImageUltimate --version 4.6.0
<PackageReference Include="GleamTech.ImageUltimate" Version="4.6.0" />
paket add GleamTech.ImageUltimate --version 4.6.0
#r "nuget: GleamTech.ImageUltimate, 4.6.0"
// Install GleamTech.ImageUltimate as a Cake Addin #addin nuget:?package=GleamTech.ImageUltimate&version=4.6.0 // Install GleamTech.ImageUltimate as a Cake Tool #tool nuget:?package=GleamTech.ImageUltimate&version=4.6.0
## Version 4.6.0 - March 23, 2021
- **Changed:** ExifTag is changed from Enum to Class with static properties for Groups (IFDs) to prevent conflicts with same decimal IDs.
Tags updated to latest EXIF 2.32 specification.
- **Changed:** IptcTag is changed from Enum to Class with static properties for Groups (Records) to prevent conflicts with same decimal IDs.
Tags updated to latest IIM 4.2 specification.
- **Fixed:** Calling ExifEntry.Description property caused an error for some images due to conflicting tag names in different groups, e.g.
"Overview" example also failed for some images due to this.
- **Added:** Changes to ExifDictionary and IptcDictionary are now saved automatically when the image is saved.
For adding or updating tags, use ExifDictionary.Set and IptcDictionary.Set methods.
Optimized ExifDictionary and IptcDictionary class API. Usage examples:
var entry = imageInfo.ExifDictionary[ExifTag.Image.Artist];
if (imageInfo.ExifDictionary.TryGet(ExifTag.Image.Software, out ExifEntry entry))
imageTask.Info.ExifDictionary.Set(ExifTag.Image.Artist, "UPDATED Artist TAG");
- **Changed:** Renamed ImageTask.ToBitmap method to SaveAsBitmap for better API discoverability.
Removed FromBitmap method and made System.Drawing.Bitmap contructor public for loading images in ImageTask and ImageInfo.
- **Added:** Added ImageTask.SaveAsBytes method for convenience.
Added byte array constructor for loading images in ImageTask and ImageInfo.
- **Added:** Added ImageTask.SaveAsBase64DataUrl method for convenience.
This generates a base64 encoded data URL in format "data:[<mediatype>][;base64],<data>" which can be used directly in CSS rules and HTML.
And also string constructor (imagePath) now accepts a base64 encoded data URL for loading images in ImageTask and ImageInfo.
- **Fixed:** Inherited properties were not being displayed in Docs for ImageTask and ImageInfo.
- **Improved:** Stability of image processing.
- GleamTech.Common (>= 4.5.1)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on GleamTech.ImageUltimate:
FileUltimate is an ASP.NET File Manager and Uploader which supports ASP.NET Core 2.0+, ASP.NET MVC 3+ and ASP.NET WebForms 4+ web applications/web sites. Integrate a file manager into your ASP.NET application or site rapidly. - Browse and manage files with access control. - Accept files with the advanced upload functionality. - Offer a structured and neat download area. - Preview documents (70+ file formats, including PDF © Microsoft Office), images, audios and videos. Note: This package contains a fully working version of the product, however without a license key it will run in trial mode.
This package is not used by any popular GitHub repositories.