This documentation is for the old version. Go to the latest Graphics Mill docs

Introduction

Aurigma Graphics Mill 5.5 for .NET is an image processing component developed for .NET platform. This component is indispensable when you create applications that work with images. Whenever you create a photohosting website, an application which applies preprint preparation to images, a script which generates web graphics, or whatever else imaging application, Graphics Mill for .NET will help you in it.

Graphics Mill for .NET consists of three parts:

  • Core class library - a set of classes (non-visual) that provide imaging operations: loading/saving images from/to files, applying different transforms and effects, removing red-eye effect, converting pixels between different color spaces, drawing lines, curves, shapes and text, etc. More about Graphics Mill for .NET core class library...
  • Windows Forms controls - a set of Windows controls which leverage using Graphics Mill for .NET in desktop Windows applications. These controls enable you to display an image, zoom it, pan, select a portion of an image, as well as print it. Also, it includes controls which allow to handle multiple images and vector objects within one work area (move, resize, rotate, etc). More about Graphics Mill for .NET Windows Forms controls...
  • AJAX Controls - a set of unique AJAX controls which provides an user with great GUI for image displaying and editing. Using these controls you can easily build web photo editors and the imaging web applications. More about Graphics Mill for .NET AJAX Controls...

Also, these are additional modules (add-ons) for Graphics Mill for .NET are available:

  • Advanced PSD Add-on - a set of classes that allows to read with PSD files (native format of Adobe® Photoshop®). You can load separate raster and text layers. For text layers you can read font and paragraph settings. This add-on is ideal to create an application which can work with image templates (like business cards, postcard, flyers, etc). More about Advanced PSD Add-on .
  • AVI Processor Add-on - a set of classes that expands Graphics Mill for .NET functionality with AVI files support. You can read AVI files frame-by-frame, create new AVI files, work with audio track, and perform a lot of other video processing operations. More about AVI Processor Add-on .
  • Media Processor Add-on - a set of classes that enables you to load frames from various video files. Unlike AVI Processor Add-on, it cannot create video files, however it supports not only AVI vido format, but also other video formats (like MPEG, MOV, ASF, WMV, etc - it depends on DirectX and QuickTime version installed at your machine). More about Media Processor Add-on .

Features Highlights for Different Fields

Graphics Mill is a very versatile component and it can be used in a wide variety of applications. To help you to examine benefits of the Graphics Mill for your kind of applications, we have prepared features highlights for the following fields:

Multi-core and x64 Platform Support

Aurigma Graphics Mill 5.5 for .NET comes in two builds: for x86 and x64 platforms.

Note

Not all Graphics Mill for .NET features can be used in x64 applications. See the Installation and Redistribution Notices topic for details.

Some Graphics Mill transforms are written to be parallelized when performing on multi-core workstations. Find instructions on how to turn multi-core support on in the Enabling Multi-core Processing topic.

Managed + Unmanaged Code

None of the imaging software can be 100% managed. Otherwise it will have significant performance problems. That's why all the high-performance imaging components for .NET are written by mixing managed .NET code with unmanaged code written in C/C++. Most companies implement mixing of managed and unmanaged code by writing wrapper .NET classes for COM components or common Windows DLLs. However this approach has an obvious disadvantage: it is vulnerable to the so-called "DLL Hell" problem which happens when different versions of the same component are installed on the same machine.

Graphics Mill for .NET implements a different approach. Written in the MC++ (Managed C++), it mixes managed and unmanaged C++ code in a single assembly. It means no .NET-foreign DLLs are distributed. So you do not need to register any DLLs or put them into system folders. You can deploy your applications with a simple xcopy and never have versioning problems. Also, since unmanaged code can be called inside the managed one without any platform interoperability, it has higher performance.

Another great feature of the unmanaged code in Graphics Mill for .NET is the possibility to use Assembler. Most speed-critical portions of code are written in Assembler with MMX optimization. It enables Graphics Mill to be much faster than other imaging toolkits which do not use such kind of optimization.