Copyright Information

Chapter 1: Introduction

Manual Layout
Documentation Files
What's New in ImageGear Professional v. 13?
Improvements in Previous ImageGear Professional v12
Improvements in ImageGear v11
ImageGear Overview
High speed display
Image loading and saving
Printing
Advanced TWAIN scanning
Image processing
Pixel access
Graphical User Interface
Format conversion
Compression
Animation
Special effects
Transitions
Built-in Internet support (URL, FTP, Gopher)
Native CMYK support
ImageClean Auto-image Correction
Database
Annotations
ROI Processing
Supported Formats
ImageGear Components
ImageGear Professional Component Descriptions
ImageGear ABIC Component
ImageGear ART Component
ImageGear BarCode Component
ImageGear CAD/Vector (DGN) Component
ImageGear CAD/Vector (DWG, DXF) Component
ImageGear CAD/Vector (HPGL, HPGL/2) Component
ImageGear CAD/Vector (CGM) Component
ImageGear FlashPix Component
ImageGear GIF/TIFF-LZW Component
ImageGear ImageClean Component
ImageGear ISIS/MS61 Component
ImageGear JBIG2 Component
ImageGear JPEG2K Component
ImageGear MD Component
ImageGear Multimedia Component
ImageGear OCR Component
ImageGear PDF Component
Answering Your ImageGear Questions
Product Serial Numbers
AccuSoft Customer Support
Before Contacting Customer Support
Internet Services
Downloading from the Web Site

Chapter 2: Installation

Minimum Requirements
Installing from CD
Installing from the Web Site
Directory Structure
Description of Installed Files
Sample Applications
Uninstalling ImageGear
ImageGear Licensing

Chapter 3: Getting Started

ImageGear DLL Tutorial
Using ImageGear DLL in MS VS.NET
ImageGear DLL Samples
Description of Installed Samples
Using ART Component (A Quick Start Tutorial)

Chapter 4: Understanding Bitmap Images

Pixels
RGB or 24-bit Images
1-bit Images
4-bit and 8-bit Images
Gray-Scale Images
Color Values Used During Display
Device-Independent/Device-Dependent Bitmaps
Device-Independent Bitmaps (DIB)
Device-Dependent Bitmaps - DDBs
Vector Images
ImageGear Architecture Diagram

Chapter 5: Using ImageGear

Function Naming Conventions
Calling an ImageGear Function
Using ImageGear Licensing API
Working with Format Filters
Using the Format Filters API for Image Loading and Getting Information.
Detecting the File Format
Getting Information and Sorting Images
Using Format Filters API for Image Saving
Using Format Filters API for Filter Control
Non-Image Data Processing
Non-Image data format
Processing of non-image data through filter callback functions
ImageGear Color Profile Manager
Color Profile Basic Concepts
ImageGear Color Profile Groups
ICP (Import Color Profile)
ECP (Export Color Profile)
WCP (Working Color Profile)
Color Profile Manager API
Working with Global Control Parameters
Loading Images
Working With Color Space Options
Saving Images
The Image Rectangle
Saving Images to a Disk File
Saving to a Disk File Using a File Descriptor Handle
Saving an Image to Memory
Converting Images from One File Format to Another
Working with Multi-page Images
Creating and Deleting a Multi-page Image
Opening and Closing an External Image File
Loading and Saving Pages
Using Other Functions that Work with Pages
Using the Multi-page Image Callback Function
Displaying Images
Concepts
Understanding Storage Options
Understanding Display Options
Geometric Layout
Dithering, Anti-aliasing, and Palette Handling
Transparency and Background
Lookup Tables and Gamma Correction
Image Processing
Color Reduction
Color Promotion
Contrast Alteration
Image Transformation
Image Analysis
Special Effects
Blending and Combining Images
Image Correction
Image Maintenance
Image Processing for the Associated Alpha Images
Image Utility Functions
Creating DIBs and DDBs
Deleting DIBs and DDBs
Reading and Writing Palettes
Getting Information about a HIGEAR Image
Obtaining Information about Files
Image Control
Accessing Pixels and Portions of Images
Allocating Space for ImageGear Pixel Access Functions
Getting and Setting Individual Pixels
Getting and Setting Linear Groups of Pixels
Getting and Setting a Rectangular Area of Pixels
Using Pixel Access Functions with ImageGear
Thread Safety
Copying Images to and from the Clipboard
Copying/Cutting to the Clipboard
Checking the Contents of the Clipboard
Pasting an Image from the Clipboard
ImageGear Component Manager
Component Manager API
ImageGear Component Names
Scanning Images
Scanning Images Using TWAIN Devices
TWAIN Scanning Functions Overview
Scanning Using ImageGear
Selecting the Source
Setting the TWAIN Image Acquisition Mode
Setting the Filename and Format Type for Disk File Transfer
Setting the Buffer Size for Buffered Memory Transfer
Using Native Transfer Syntax
Selecting the Paper Source
Verifying the TWAIN Version
Controlling the Scanning Capabilities and Other Options
Scanning and Acquiring Pages
Using the User Interface (UI)
Using Disk File Transfer and IG_scan_acquire()
Using Disk File Transfer and IG_scan_pages()
Names and Formats for ImageGear Scanned Images
Setting the Data Source Capabilities
Formatting Scanned Image
Using the Universal TWAIN Cap Callback
Using the GUI Scan Window
12-bit Gray Level Scanning
Scanning Images using ISIS devices
Understanding the SCAN Component
Using ImageGear SCAN Component
Using SCAN Component Functions
ISIS/MS61 Scanning Capabilities
Attaching ImageGear SCAN Component and Retrieving Information
Loading and Unloading the Driver
Acquiring and Scanning Pages
Using the User Interface (UI) when Scanning
Selecting the Paper Source
Understanding Scanning Profiles
Understanding Pseudo-capabilities
Interrupting the Scanning Process
Using the Query/Set Caps Dialog Box
Using the ImageGear ART Component
Loading the ART Component
Working with ART Marks
Components of a Mark
Creating a Mark with End-User Interaction
Creating a Mark Using Low-Level Calls
Modifying Marks
Modifying Marks By the End User
Modifying Marks Programmatically
Deleting Marks
Clipboard Operations
Undoing Edits
Iterating Through Marks
Iterating Through Blocks
ART Textflow Functionality
Working With Mark Groups
Saving Marks to File
Importing Marks to an Image
Edit Mode vs. Run Mode
ART Component Important Structures and Types
Mark Objects: Descriptions, Types and Attributes
Arrow
Attach-a-Note
Audio
BUTTON
Encryption
FILLED ELLIPSE
FILLED POLYGON
FILLED RECTANGLE
Form
FREEHAND LINE
Highlighter
HOLLOW ELLIPSE
HOLLOW POLYGON
HOLLOW RECTANGLE
HOT SPOT
Image Embedded
Image Reference
Pin Up Text
POLYLINE
Protractor
REDACTION
RTF
Ruler
STRAIGHT LINE
TEXT From FILE
Text Stamp
Typed Text
GUI Functions
The GUI Pan Window
The GUI Magnify Window
GUI Select Track Mouse
The GUI Palette Window
The GUI Thumbnail Window
ImageGear GUI
Printing Images
Library Utility Functions
Checking the ImageGear Version
Callback Functions
Private Data Use in Callback Functions
Registering a Callback Function
Status Bar Callback
Tag (Non-Image) Data Callback
Reading Tags During Loading
Modifying Tags During Saving
ImageGear Default Tag Values
User-Defined Tags
Important Data Types and Structures in Function Calls
Data Types
Data Structures
AT_DIB
AT_POINT
AT_RECT
AT_RGB
AT_RGBQUAD
BITMAPINFOHEADER
Detecting and Handling Errors Reported by Functions
Working with Stripped Images
Working with Tiled Images
Padding
Saving a TIFF File Using Tiles
TIFF Storage
Working with Vector Data
Vector Data Structure (VDS) and API

Chapter 6: API Function Reference

Pointers
ImageGear ImageClean Component Functions
ImageGear ISIS/MS61 Component Functions
ImageGear ART Component Functions
ImageGear GUI
ImageGear Function Reference
ART_callback_register
ART_control_option_get
ART_control_option_set
ART_edit_copy
ART_edit_cut
ART_edit_paste
ART_edit_paste_count
ART_edit_undo
ART_edit_undo_clear
ART_edit_undo_count
ART_edit_undo_enable
ART_edit_undo_record
ART_enable_rotation_get
ART_enable_rotation_set
ART_file_append
ART_file_export
ART_file_import
ART_file_import_ex
ART_global_block_create
ART_global_block_delete
ART_global_block_first
ART_global_block_next
ART_global_block_query
ART_group_access
ART_group_bring_to_front
ART_group_delete
ART_group_edit_copy
ART_group_edit_cut
ART_group_select
ART_group_send_to_back
ART_group_visible
ART_GUI_cursor_query
ART_GUI_interaction_process
ART_GUI_mark_hit_test
ART_GUI_mark_paint
ART_GUI_property_sheet_create
ART_GUI_property_sheet_destroy
ART_GUI_property_sheet_init
ART_GUI_property_sheet_query
ART_GUI_property_sheet_show
ART_GUI_property_sheet_title_set
ART_GUI_resize_handle_size_get
ART_GUI_resize_handle_size_set
ART_GUI_text_flow
ART_GUI_text_overflow_check
ART_GUI_toolbar_button_get
ART_GUI_toolbar_button_set
ART_GUI_toolbar_CB_register
ART_GUI_toolbar_create
ART_GUI_toolbar_create_ex
ART_GUI_tool_get
ART_GUI_tool_set
ART_image_burn_in
ART_internet_export
ART_internet_import
ART_mark_access
ART_mark_block_create
ART_mark_block_create_ex
ART_mark_block_delete
ART_mark_block_first
ART_mark_block_next
ART_mark_block_query
ART_mark_bring_to_front
ART_mark_count
ART_mark_create
ART_mark_delete
ART_mark_first
ART_mark_is_access_granted
ART_mark_is_selected
ART_mark_is_visible
ART_mark_modify
ART_mark_next
ART_mark_query
ART_mark_rotate
ART_mark_select
ART_mark_select_count
ART_mark_selected_first
ART_mark_selected_next
ART_mark_send_to_back
ART_mark_visible
ART_memory_append
ART_memory_export
ART_memory_export_size_calc
ART_memory_import
ART_memory_import_ex
ART_rotation_angle_get
ART_rotation_angle_set
ART_version_numbers
IG_ascii_import
IG_ascii_page_width_get
IG_batch_CB_register
IG_clipboard_copy
IG_clipboard_cut
IG_clipboard_dimensions
IG_clipboard_paste
IG_clipboard_paste_available
IG_clipboard_paste_available_ex
IG_clipboard_paste_merge
IG_clipboard_paste_merge_ex
IG_clipboard_paste_op_get
IG_clipboard_paste_op_set
IG_color_space_level_get
IG_color_space_level_set
IG_comm_comp_attach
IG_comm_comp_check
IG_comm_comp_list
IG_comm_entry_request
IG_comm_function_call
IG_convert_DPI_to_PPM
IG_convert_PPM_to_DPI
IG_cpm_image_profile_get
IG_cpm_image_profile_set
IG_cpm_profile_get
IG_cpm_profile_set
IG_cpm_profiles_reset
IG_DIB_area_get
IG_DIB_area_get_info
IG_DIB_area_set
IG_DIB_area_size_get
IG_DIB_column_get
IG_DIB_column_set
IG_DIB_line_get
IG_DIB_line_set
IG_DIB_pixel_get
IG_DIB_pixel_set
IG_DIB_raster_get
IG_DIB_raster_set
IG_DIB_raster_size_get
IG_DIB_resolution_units_get
IG_DIB_resolution_units_set
IG_DIB_row_get
IG_DIB_row_set
IG_display_animation_delay_get
IG_display_animation_delay_set
IG_display_option_get
IG_display_option_set
IG_display_transparent_get
IG_display_transparent_set
IG_dspl_antialias_get
IG_dspl_antialias_set
IG_dspl_background_get
IG_dspl_background_set
IG_dspl_DDB_create
IG_dspl_DDB_draw
IG_dspl_DDB_import
IG_dspl_device_to_image
IG_dspl_device_to_image_d
IG_dspl_dithering_get
IG_dspl_dithering_set
IG_dspl_document_print
IG_dspl_document_print_custom
IG_dspl_foreground_get
IG_dspl_foreground_set
IG_dspl_free_grp_id_get
IG_dspl_gamma_correction_LUT_build
IG_dspl_gamma_correction_set
IG_dspl_grp_reset
IG_dspl_image_calc
IG_dspl_image_draw
IG_dspl_image_print
IG_dspl_image_to_device
IG_dspl_image_to_device_d
IG_dspl_image_wipe
IG_dspl_layout_get
IG_dspl_layout_set
IG_dspl_LUT_get
IG_dspl_LUT_set
IG_dspl_mapmode_get
IG_dspl_mapmode_set
IG_dspl_orientation_get
IG_dspl_orientation_set
IG_dspl_page_print
IG_dspl_palette_create
IG_dspl_palette_handle
IG_dspl_palette_get
IG_dspl_palette_set
IG_dspl_PPM_correct_get
IG_dspl_PPM_correct_set
IG_dspl_resize_handle
IG_dspl_scroll_get
IG_dspl_scroll_handle
IG_dspl_scroll_set
IG_dspl_scroll_to
IG_dspl_scroll_to_ex
IG_dspl_transparency_get
IG_dspl_transparency_set
IG_dspl_zoom_get
IG_dspl_zoom_set
IG_dspl_zoom_to_rect
IG_err_callback_get
IG_err_callback_set
IG_err_count_get
IG_err_error_check
IG_err_error_get
IG_err_error_set
IG_errmngr_callback_get
IG_errmngr_callback_set
IG_err_record_get
IG_err_stack_clear
IG_error_check
IG_error_clear
IG_error_get
IG_error_set
IG_file_IO_register
IG_fltr_compressionlist_get
IG_fltr_ctrl_get
IG_fltr_ctrl_list
IG_fltr_ctrl_set
IG_fltr_detect_FD
IG_fltr_detect_file
IG_fltr_detect_mem
IG_fltr_formatlist_get
IG_fltr_formatlist_sort
IG_fltr_info_get
IG_fltr_load_file
IG_fltr_load_file_format
IG_fltr_metad_callback_get
IG_fltr_metad_callback_set
IG_fltr_pagecount_file_format
IG_fltr_pagedelete_file
IG_fltr_pageinfo_get
IG_fltr_pageswap_file
IG_fltr_save_file
IG_fltr_savelist_get
IG_FX_blur
IG_FX_chroma_key
IG_FX_diffuse
IG_FX_emboss
IG_FX_motion
IG_FX_noise
IG_FX_pixelate
IG_FX_posterize
IG_FX_spotlight
IG_FX_stitch
IG_FX_texture
IG_FX_twist
IG_FX_watermark
IG_gctrl_item_by_index_get
IG_gctrl_item_count_get
IG_gctrl_item_get
IG_gctrl_item_id_get
IG_gctrl_item_set
IG_GUI_color_profile_attribute_get
IG_GUI_color_profile_attribute_set
IG_GUI_color_profile_track_mouse
IG_GUI_color_profile_update
IG_GUI_color_profile_window_create
IG_GUI_histogram_update
IG_GUI_histogram_window_create
IG_GUI_magnify_attribute_get
IG_GUI_magnify_attribute_set
IG_GUI_magnify_GrpID_get
IG_GUI_magnify_track_mouse
IG_GUI_magnify_update
IG_GUI_magnify_window_create
IG_GUI_page_active_get
IG_GUI_page_active_set
IG_GUI_page_attribute_get
IG_GUI_page_attribute_set
IG_GUI_page_count_get
IG_GUI_page_delete_CB_register
IG_GUI_page_document_refresh
IG_GUI_page_document_update
IG_GUI_page_file_append
IG_GUI_page_focus_set
IG_GUI_page_handle_get
IG_GUI_page_insert
IG_GUI_page_order_CB_register
IG_GUI_page_remove
IG_GUI_page_select_CB_register
IG_GUI_page_thumbnail_get
IG_GUI_page_thumbnail_size_get
IG_GUI_page_thumbnail_size_set
IG_GUI_page_update
IG_GUI_page_window_create
IG_GUI_page_window_create_ex
IG_GUI_palette_CB_register
IG_GUI_palette_update
IG_GUI_palette_window_create
IG_GUI_pan_CB_register
IG_GUI_pan_GrpID_get
IG_GUI_pan_track_mouse
IG_GUI_pan_update
IG_GUI_pan_window_create
IG_GUI_pan_window_create_ex
IG_GUI_pixdump_attribute_get
IG_GUI_pixdump_attribute_set
IG_GUI_pixdump_track_mouse
IG_GUI_pixdump_window_create
IG_GUI_pixdump_update
IG_GUI_scan_attribute_get
IG_GUI_scan_attribute_set
IG_GUI_scan_window_create
IG_GUI_select_attribute_set
IG_GUI_select_track_mouse
IG_GUI_thumbnail_attribute_get
IG_GUI_thumbnail_attribute_set
IG_GUI_thumbnail_CB_register
IG_GUI_thumbnail_create_CB_register
IG_GUI_thumbnail_delete_CB_register
IG_GUI_thumbnail_data_get
IG_GUI_thumbnail_data_set
IG_GUI_thumbnail_dir_append
IG_GUI_thumbnail_file_append
IG_GUI_thumbnail_highlight_icons
IG_GUI_thumbnail_hit_test
IG_GUI_thumbnail_load_CB_register
IG_GUI_thumbnail_mouse_CB_register
IG_GUI_thumbnail_memory_append
IG_GUI_thumbnail_remove
IG_GUI_thumbnail_sort
IG_GUI_thumbnail_state_get
IG_GUI_thumbnail_state_set
IG_GUI_thumbnail_title_CB_register
IG_GUI_thumbnail_update
IG_GUI_thumbnail_window_create
IG_GUI_thumbnail_window_create_ex
IG_GUI_window_associate
IG_GUI_window_attribute_get
IG_GUI_window_attribute_set
IG_GUI_window_CB_register
IG_GUI_window_create
IG_IC_check_for_noise
IG_IC_clean_borders
IG_IC_clean_borders_ex
IG_IC_crop_auto
IG_IC_invert_black_image
IG_IC_invert_white_text
IG_IC_invert_white_text_ex
IG_IC_orient_auto
IG_IC_orient_auto_ex
IG_image_alpha_count_get
IG_image_alpha_get
IG_image_alpha_set
IG_image_batch_convert
IG_image_compression_type_get
IG_image_convert
IG_image_create_alpha
IG_image_create_DIB
IG_image_create_DIB_ex
IG_image_delete
IG_image_DIB_bitmap_pntr_get
IG_image_DIB_palette_pntr_get
IG_image_DIB_pntr_get
IG_image_dimensions_get
IG_image_duplicate
IG_image_export_DIB
IG_image_import_DIB
IG_image_is_gray
IG_image_is_signed_get
IG_image_is_signed_set
IG_image_is_valid
IG_image_orientation_get
IG_image_orientation_set
IG_image_resolution_get
IG_image_resolution_set
IG_info_get
IG_info_get_FD
IG_info_get_mem
IG_IP_alpha_create
IG_IP_arithmetic
IG_IP_arithmetic_rect
IG_IP_blend_percent
IG_IP_blend_with_alpha
IG_IP_blend_with_LUT
IG_IP_color_combine
IG_IP_color_combine_ex
IG_IP_color_convert
IG_IP_color_promote
IG_IP_color_reduce_bayer
IG_IP_color_reduce_diffuse
IG_IP_color_reduce_halftone
IG_IP_color_reduce_median_cut
IG_IP_color_reduce_octree
IG_IP_color_reduce_popularity
IG_IP_color_reduce_to_bitonal
IG_IP_color_separate
IG_IP_contrast_adjust
IG_IP_contrast_equalize
IG_IP_contrast_gamma
IG_IP_contrast_invert
IG_IP_contrast_stretch
IG_IP_convert_DIB_to_runs
IG_IP_convert_runs_to_DIB
IG_IP_convert_to_gray
IG_IP_convolve_matrix
IG_IP_crop
IG_IP_decrypt
IG_IP_deskew_angle_find
IG_IP_deskew_auto
IG_IP_despeckle
IG_IP_draw_frame
IG_IP_edge_map
IG_IP_encrypt
IG_IP_flip
IG_IP_gaussian_blur
IG_IP_histo_clear
IG_IP_histo_tabulate
IG_IP_median
IG_IP_merge
IG_IP_NR_ROI_control_get
IG_IP_NR_ROI_control_set
IG_IP_NR_ROI_mask_associate
IG_IP_NR_ROI_mask_delete
IG_IP_NR_ROI_mask_unassociate
IG_IP_NR_ROI_to_HIGEAR_mask
IG_IP_pseudocolor_limits
IG_IP_pseudocolor_small_grads
IG_IP_resize
IG_IP_resize_bkgrnd
IG_IP_resize_bkgrnd_ex
IG_IP_resize_ex
IG_IP_RGB_to_hue
IG_IP_rotate_any_angle
IG_IP_rotate_any_angle_bkgrnd
IG_IP_rotate_compute_size
IG_IP_rotate_multiple_90
IG_IP_sharpen
IG_IP_smooth
IG_IP_swap_red_blue
IG_IP_thumbnail_create
IG_IP_thumbnail_create_ex
IG_IP_transform_with_LUT
IG_IP_unsharp_mask
IG_lic_solution_name_set
IG_load_auto_detect_get
IG_load_auto_detect_set
IG_load_CCITT_FD
IG_load_CCITT_mem
IG_load_color_reduction_get
IG_load_color_reduction_set
IG_load_FD
IG_load_FD_CB
IG_load_file
IG_load_file_display
IG_load_internet
IG_load_internet_ex
IG_load_mem
IG_load_mem_CB
IG_load_raw_FD
IG_load_raw_file
IG_load_raw_mem
IG_load_rect_get
IG_load_rect_set
IG_load_size_get
IG_load_size_set
IG_load_tag_CB_register
IG_load_thumbnail
IG_load_thumbnail_FD
IG_load_thumbnail_mem
IG_load_tiles_stitch
IG_load_tiles_stitch_FD
IG_load_tiles_stitch_mem
IG_mem_CB_register<