LEADTOOLS Annotation (image markup) Options can be added to medical, grayscale and color images. They are included with LEADTOOLS Medical and Document SDKs.
Annotation objects available include Ruler, Protractor, Cross Product, Pointer, Text, Circles, Freehand, etc. LEADTOOLS allows you to read or write annotations as an external annotation file, private DICOM data elements or LEAD or Wang annotation tags within a TIFF file, or annotations can become a permanent part of the image data or applied to a 1-bit image to create an overlay. With LEADTOOLS Annotations, you can choose between low level access to the annotations, or you can implement annotation support through a fully automated mode with a ready to use floating, customizable toolbar and pop-up menus. The superior annotation features provided in LEADTOOLS can be used in any application where image markup is desired.
LEADTOOLS allows the end-user to reposition nodes of an existing freehand object, which prevents the user from having to redraw the object. Enhanced redact objects allow you to restore parts of an image that were blacked out. When combined with annotation security, these redact objects provide a means of granting user-level access to parts of an image. Annotation objects can be stored as a separate object layer, or can be burned or embedded into the actual image. LEADTOOLS allows you to read or write annotations as an external file or as LEAD or Wang annotation tags within a TIFF file. With LEADTOOLS, you can choose between low level access to the annotations, or you can implement annotation support through a fully automated mode with a ready to use floating, customizable toolbar and pop-up menus. The superior annotation features provided in LEADTOOLS can be used in any application where image markup is required.
Annotations are based on vectored drawing functions and are associated with bitmaps as an overlay of the displayed image. LEADTOOLS supports a number of annotation types, including lines, rectangles, audio clips, hotspots, redact objects, polygons, and containers. A container is a specialized annotation object that lets you position and group other annotation objects, including other container objects. For a full list of available annotation types, refer to the annotation objects table.
LEADTOOLS maintains annotations separately from bitmaps. Your application code is responsible for maintaining the relationships between images and annotations. For example, the annotation example that ships with LEADTOOLS, creates an annotation file that has the same name as its associated image file, but with a different extension. When the image file is loaded, the program looks for an associated annotation file and loads it as well.
The functions supported by LEADTOOLS let you create automated annotations or non-automated annotations, depending on your application’s requirements.
Key Features:
- Create any of the following objects: line, arrow, rectangle, square, ellipse, circle, polygon, freehand line, text, highlighter, hot spot, note, stamp, redaction, button, audio clip, video, freehand hot spots, points, protractors, cross-products, push pins, and rubber stamps.
- Implement automated annotation support.
- Implement annotation passwords (case-sensitive) providing security for every object.
- Implement hyperlinks for every object. Hyperlinks can be user defined messages, programs to run, or jumps to Web pages.
- Modify text strings used in automated annotation support.
- Scale and position a group to fit the displayed bitmap.
- Group and ungroup objects.
- Apply an object or group to a bitmap.
- Size and position an object or group.
- Rotate an object or group.
- Flip, reverse, or shear an object or group.
- Save an object or group on the Windows clipboard.
- Print an object or group.
- Save an object or group in a file.
- Save annotations as an external LEAD file, WMF or EMF file, or as a WANG compatible tag inside a TIFF file.
- Save an object or group as a file in memory. (This is useful for database support.)
- Save an object or group in a database using OLEDB or VB data binding.
- Control over where optional annotation name or title is displayed.
- Multi-page annotation support.
Automated Annotations
Automated annotations require an automation object to be associated with the top-level container, also known as the root container. This automation object lets you maintain default properties for all objects in the root container. For example, you can use it to set the default font and the default line width. Keep in mind, however, that scaling factors affect the appearance of these default measurements. The values are set based on the scaling factors that are in effect at the time you create the object. Features associated with automated annotations are:
-
Automated annotation menus appear when you right click in design mode. These menus may or may not include the hyperlink menu item.
-
Automated drawing lets you use the left mouse button to draw annotations in design mode.
-
The annotation toolbar lets you select the annotation tool to draw.
-
LEADTOOLS handles the activation of audio annotations and hyperlinks.
-
You can undo a number of user actions, executed using the automated annotations functions.
-
You can implement automation using only a few supporting functions.
Non-automated Annotations
Non-automated annotations allow you to customize creation of and interaction with annotations to suit your own needs. Any LEADTOOLS annotation function, except those requiring an automation object, can be used when working with non-automated annotations. When programming non-automated annotations, it is important to remember:
-
You must provide any menus or dialogs you wish to use for entering annotation data.
-
You must also provide your own means of drawing and interacting with the annotations.
-
No hyperlink activation is provided for non-automated annotations. In addition to providing the code for entering hyperlink type and associated parameters, you must also provide the code for accessing the default web browser and calling any programs to be run through a hyperlink.
For more information, refer to:
Reference
IntroductionGetting Started (Guide to Example Programs)
Implementing Annotations
Implementing Annotation Security
Implementing Non-Automated Annotation
Implementing User- Defined Annotation Objects
Using Non-Automated Annotations In Run Mode
Using Pictures In Annotation Objects
Using Primary and Secondary Pictures in Annotation Objects
Using Protractors in Annotation Objects
Using Rulers In Annotation Objects
Using Text In Annotation Objects
Working With Automated Annotations
Working with DICOM Annotations