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.1.0
dotnet add package GleamTech.ImageUltimate --version 4.1.0
<PackageReference Include="GleamTech.ImageUltimate" Version="4.1.0" />
paket add GleamTech.ImageUltimate --version 4.1.0
#r "nuget: GleamTech.ImageUltimate, 4.1.0"
## Version 4.1.0 - January 9, 2020
- **Improved:** Stability of image processing. Improved ExifDictionary handling.
- **Added:** New GleamTechConfiguration.EnsureAssemblies method which ensures GleamTech's assemblies are loaded and initialized.
You may need to call this method in entry point/startup of your application, if you receive "Could not load file or assembly ..." errors.
Some DLLs are embedded inside GleamTech's DLLs and they are resolved automatically when they are requested however
internal AssemblyResolver should be initialized first and internal AssemblyResolver of each GleamTech DLL can be initialized
only when a type inside that DLL is accessed first. So in some cases, even a GleamTech DLL is loaded, its AssemblyResolver
may not be initialized yet (because none of its types is accessed yet). You can observe this behaviour if your application
calls some methods which scans assemblies for reflection purpose (reflection-only type access does not trigger DLL's module initializer),
for example ASP.NET Core's endpoints.MapControllers method and SimpleInjector�s RegisterMvcControllers method.
So to prevent errors on those methods, you can call this method before such methods.
Note that you should not need to call this method usually for web applications, because it is handled automatically
as we can know when the application is started by hooking up (automatically in ASP.NET Classic and when you call AddGleamTech and
UseGleamTech methods in ASP.NET Core).
- **Changed:** In previous versions, invalid values for GleamTech related configuration keys (e.g in Web.config or appsettings.json) was
silently ignored (exceptions were swallowed). From now on, invalid property values in config files will throw exceptions just like when
they are set in code. This is especially useful for "ImageUltimate:LicenseKey" property, i.e you should instantly know if you put an invalid license
key (empty string for "ImageUltimate:LicenseKey" property will also throw) without silently falling back to trial mode.
- GleamTech.Common (>= 4.1.0)
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.