ImageGear® for C and C++ on Windows is the most advanced way to create, control, and deliver more secure, high-quality imaging applications. ImageGear allows you to add powerful imaging capabilities to your applications. ImageGear supports the most commonly used graphics file formats, providing complete compatibility when developing applications across multiple platforms, or when developing for users who have a variety of target systems.
This section provides overview information about the following ImageGear features:
ImageGear Samples
ImageGear provides a variety of easy-to-use sample programs and images to help get you up and running quickly. You can copy and modify them as needed and use them as templates for developing your own applications. The sample images may also be used for any purpose, such as testing your applications as you develop them.
See ImageGear Samples for a complete list of the samples available, along with their descriptions, and where you can find them.
ImageGear supports the most commonly used graphics file formats with different compressions as well as most of the industry-standard compression algorithms. Here are a few highlights:
See the File Formats and Compressions chapter for details on all of the formats and compressions supported by ImageGear.
PDF
ImageGear provides a comprehensive API (and suite of Samples), enabling you to read, write, display, edit, and annotate Portable Document Format (PDF), PostScript (PS), and Encapsulated PostScript (EPS) formats. ImageGear provides low-level access to the PDF libraries, allowing you to easily integrate PDF into your imaging applications. See the PDF section for a tutorial that will help you get started using ImageGear PDF as well as "How to..." topics that will help you perform common PDF operations.
DICOM
The ImageGear Medical (MD) component supports the DICOM format, contains a custom API, and includes expanded image processing capabilities beyond those of the baseline ImageGear library.
The format support of the MD component includes loading and saving monochrome, palletized, and true color medical images using the following file formats:
- DICOM 3.0 Part 10-compliant images
- DICOM 3.0 Raw Format (non-Part 10-compliant)
In addition, your application will continue to support all ImageGear-supported file formats, allowing you to convert an image of a different format to a medical image format, and vice-versa.
Digital Camera RAW
ImageGear supports reading raw images created by many (several hundred) digital cameras. Support for raw images includes reading of image pixel data, color reconstruction of raw images, and reading of metadata stored with the images. See Digital Camera RAW for more information.
JPEG 2000
The ImageGear JPEG 2000 Component allows you to create an imaging application that supports JPEG 2000 standard (Part I) and JPEG 2000 extensions (Part II) formats.
The JPEG 2000 standard addresses areas where other standards fail to produce the best quality or performance and provides capabilities to markets that currently do not use compression. The markets and applications better served by the JPEG 2000 standard are Internet, color facsimile, printing, scanning (consumer and pre-press), digital photography, remote sensing, mobile, medical imagery, digital libraries / archives and E-commerce.
The standard allows creating raw JPEG 2000 codestream files, which only contain compressed data and the minimal necessary headers, as well as JP2-compatible files, which contain additional information about image color space, resolution, and some text metadata fields.
The JPEG 2000 Standard Part II defines an extended format called JPX, which defines numerous extensions, including support for different color spaces (like CMYK), advanced support for transparent channels, and additional metadata elements.
In addition, ImageGear provides support for the following:
- Converting a file from one format to another (see Converting Image Format).
- Metadata support (see Access Image Metadata and Metadata Structures).
- Complete GIF format support, providing programmatic control of all aspects of reading and writing all types GIF images (see Multimedia Format: Animated GIF.
- Native CMYK support means that CMYK images can be loaded into ImageGear without being converted to RGB to ensure the original color information is maintained. The majority of image processing, image access, display, and other functions work with native CMYK image data. Images can then be saved to formats that support CMYK color space. See the Color section for more information.
Viewing
ImageGear gives you complete control over how your application displays images and documents. Among the attributes you can set on an image-by-image basis are:
- Contrast/Brightness
- Transparency
- Dithering
- Anti-aliasing
- Auto-color reduction for low color modes
- Color reduction (several types)
- Gamma correction
- Preserve black and preserve white display for 1-bit images
- 4x faster scale-to-gray
- Use an image's LUTs (Look-Up Tables) to translate the palette to another set of colors
- Background fill pattern and color to use
- Large image display capability
- High-quality display for all video modes
- Merge 2 images during display
- Display effects (wipes, blocks, etc.)
- Rotation
- Center, zoom, or scroll a displayed image from within your application
- Center image, fit to width, height, window
- Sub-region display
- Auto-aspect ratio
- Portion of the image to display (Image Rectangle)
- Region within the display area to display the image (Device Rectangle)
- Fitting the Image Rectangle to the Device Rectangle
All of the above display attributes affect the display only. They do not alter either the image bitmap or the color palette in the DIB.
Document and Image Processing
ImageGear provides the following image processing capabilities:
- Region of interest (ROI) support
- Specify rectangular ROI for nearly all image processing functions.
- Specify arbitrary ROI for most image processing functions. Functions included to create certain shape types such as ellipse, polygon, and freehand.
- Create a 1-bit mask image for identifying which pixels to include/exclude from image processing algorithms.
- Complete color space support, including color space conversions, color separation and combination, support for any color space found in any supported formats, and support for color spaces such as CMYK without conversion to RGB.
- Color reduction that maximizes quality and minimizes size.
- Encryption and decryption of an entire image or any part of an image.
- Matrix convolutions of any size with pre-defined or user-supplied matrix values.
- Special effects.
- Automatic ImageClean image correction of white text blocks, unnecessary borders, and inverted or rotated images.
- Intelligent re-sizing.
- Access to the values of individual pixels, rows or columns of pixels, and rectangular groups of pixels
The ability to specify the type of transition to use from one image to another. This is useful for slide shows or in any other case where the image itself is the focus. For this type of product, ImageGear provides a set of functions for migrating from one image to another. The transition support in ImageGear includes 29 types of transitions with control over the granularity and speed. Granularity refers to the size of the object used or the smoothness of the transition. The speed is the total time used to transition from one image to another. In addition, all other display parameters are available for controlling the transitions.
See Image Processing and Cleanup for more information.
TWAIN and ISIS Scanning
ImageGear provides support for TWAIN and ISIS scanning:
- TWAIN is targeted at occasional scanning like the desktop publishing market.
- ISIS is aimed at application-critical scanning and image manipulation, such as is found in the document imaging market.
The ISIS Component is available for ImageGear for C and C++ 32-bit versions.
TWAIN Scanning
ImageGear supports TWAIN 1.6, 1.7, 1.8, and 1.9, and works with a variety of scanner devices, digital cameras, and video capture boards.
The ImageGear TWAIN functionality allows you to control the following:
- TWAIN transfer mode
- Available TWAIN device listing
- Scanning area
- Brightness and contrast
- DPI (dots-per-inch) resolution
- Display of the TWAIN UI
- Setting of a callback function to gain control during scanning
- ADF (Automatic Document Feeder) for multi-page scanning
- Scanner capabilities
ISIS Scanning
ISIS (the Image and Scanner Interface Specification) is an open standard for scanner control and a complete image-processing framework. ISIS allows application developers to build very complex image capture systems quickly and reliably using any ISIS certified driver.
- Modular: allows applications to control a scanner directly, or to use built-in routines to handle most situations automatically.
- Flexible: using a message-based interface with tags, it can grow in a straightforward and compatible way. This means that features, operations, and formats not yet in existence can be added as desired without waiting for a new version of the specification.
- A complete specification: it addresses all of the issues that an application using a scanner must address. This includes such tasks as selecting, installing, and configuring a new scanner, setting scanner-specific parameters, scanning, reading, and writing files, and (through PixTools/View) fast image scaling, rotating, displaying, and printing. ISIS drivers have also been written to preprocess data by doing operations such as converting grayscale to binary image data dynamically.
Annotations
Add redlining and annotation capabilities to any application built with ImageGear. If you have an application that can read, display, and print images, with the ImageGear ArtX Component associated, you can add marking capabilities, such as lines, arrows, highlighting, and sticky notes to documents images, and use them as though you were working on printed sheets of paper.
ART works as an overlay to loaded images. ART annotation marks can include vector graphics, text, bitmaps, user-defined marks, and others. There are many built-in features such as automatic handling of object creation, a toolbar that you can customize, attribute dialog boxes for each type of mark, built-in internationalization, among others. See Annotating Images for more information.