When you develop a desktop application using Windows Forms, you can optimize it with visual controls. These controls make your application more convenient for the user and give it a more professional look.
Image Viewer Control
Most imaging applications need to display images. Graphics Mill provides a powerful image viewer, thumbnail list, printing manager, and several auxiliary controls with the following key features:
- Rubber-band rectangular selection which can be either free-hand, or have fixed proportions. You can "shade" the portion of the image outside of the selection. It is useful when you are using selection for cropping.

- Zoom:
- Manual zooming (by mouse wheel or modifying appropriate property of the control);
- Automatic zooming including modes such as "fit to page" (fit entire image in the control), "fit to width" (fit the image in the control width), etc;
- Several quality modes for zoom in/out display. Supports scale-to-gray resize technique for bi-tone images (makes these images look smooth and prevents the text from being unreadable);
- Correct display of semi-transparent images (with alpha-channel).
- Color management can be applied when the image is displayed.
- The actual physical size of images (in device-independent units as inches) is handled to maximize visual integrity. It is especially important for images that have different horizontal and vertical resolution, for example, fax images.
- A special navigator control can be associated with the image viewer. Navigator controls specify behavior of the mouse events at the viewer - pan, zoom in/out, zoom in the selected rectangle. Custom behavior can be specified;
Thumbnail List Control
Another handy control shipped with Graphics Mill is a thumbnail list view. This control implements a lot of features, including:
- Four view modes:
- Thumbnails;
- Icons;
- Detailed list;
- Simple list.
- Ability to add/remove list items dynamically.
- Implementation of list items based on file system, including:
- Files;
- Folders;
- Drives;
- Special file system objects like My Computer, My Documents, etc.
- Local network objects;
- Removable media such as Flash readers, digital cameras, etc.
- Ability to implement your own kinds of list items, e.g. images stored in database, or in memory.
- Activation ("opening") of an item with a mouse click or keyboard.
- Item sorting using different criteria.
- Item arrangement (including automatic).
- Multiple selection.
- Checkboxes for each item.
- Ability to determine whether an item is in one of three states - selected, checked, or focused.
- Editable labels for each item.
- Drag-n-drop support.
- Asynchronous loading of thumbnails and other list item data.
- Customizable appearance (including thumbnail size)
- Customizable list of columns in the detailed list.
Printing Control
Graphics Mill also provides a control that simplifies printing. It has the following features:
- Printing of multipage TIFF files;
- Printing of a collection of images:
- Single image on each page;
- Multiple images on each page;
- Optimization of multiple images layout on a page;
- Automatic printed image physical size and position handling:
- Auto resizing;
- Auto cropping;
- Auto centering;
- Proper handling of portrait/landscape orientation of the image;
- Footer and header captions;
- Memory-friendly implementation;
- Integration with standard .NET print dialog;
- Demo application with source code is included.

Multi-layer Image Control
Whenever you need a control that allows you to work with a composite image (e.g. several photos inside a postcard template, or vector image which consists of different objects like rectangles, ellipses, lines, etc), Graphics Mill can help. It includes the multi-layer image control with the following features:
- Multiple layers.
- Each layer can contain multiple objects (in terms of this control, these objects are called v-objects).
- V-objects of the following types are supported:
- Bitmap image
- Rectangle
- Ellipse
- Line
- Polyline
- Freehand
- Multiline text
- Custom v-objects can be easily implemented.
- Appearance for v-objects can be modified in run-time (for example, outline color, fill color, font settings, etc).
- V-objects can be transformed by a user (using a mouse - by dragging the object or one of its control point). The following actions are supported:
- Move
- Resize (proportionally or with free aspect ratio)
- Rotate
- Skew
- Specify text block bounds (for text v-object)
- Custom actions can be implemented for custom objects.
- Each of aforementioned actions can be disabled if necessary.
- Undo and redo operations support.
- Z-order of v-objects and/or layers can be easily changed.
- Multiple v-objects can be united into groups (by a mouse or programmatically). Manipulations on entire group can be carried out at once.
- The content of the multi-layer control can be rendered into a bitmap.
- Each layer can be easily hidden (without removing its v-objects).
- All v-objects inside a layer can be easily locked (i.e. the user will not be able to modify any of v-objects of a specific layer).
- The content of the control can be serialized, say, into a file, and then restored from a file.

Powerful Demo Applications
Graphics Mill for .NET™ is shipped with powerful demo applications that can be used as a perfect starter kit. Here you can find a lot of code samples. It also includes a number of ready-to-use dialogs for all the effects.

The following demo applications are available:
- Image editor.
- Color management demo application.
- TIFF viewer.

- EXIF and IPTC data viewer.
- Image database demo application.
All demo applications source code is available both in VB.NET and C#.
Source Code Available!
The source code for the Windows controls is available upon purchase. The code is written on C#.
Note, the source code for the core class library is sold separately.