Please note that Version 13 will be the last full upgrade for LEADTOOLS C++ Class Library.
Version 13 of the LEADTOOLS C++ Class Library has changed from Version 12.1 as follows:
LEADTOOLS now supports region of interest in J2K files.
For an important note concerning the BITMAPHANDLE structure, please refer to the Changed Structures section of this topic.
IMPORTANT NOTICE CONCERNING SUPPORT FOR ISIS DRIVERS:
LEADTOOLS TOOLKITS CONTAIN SUPPORT FOR ISIS DRIVERS USING PIXEL TRANSLATIONS RUNTIME (PIXDFLTN. DLL) VERSION NUMBER 55.1.260.832 OR EARLIER ALLOWING LEADTOOLS TO DIRECTLY INTERFACE WITH THE ISIS DRIVERS.
LEADTOOLS TOOLKITS DO NOT DIRECTLY COMMUNICATE WITH ISIS DRIVERS USING PIXEL TRANSLATIONS RUNTIME (PIXDFLTN) VERSION NUMBER 56.*.*.* OR HIGHER. A LEADTOOLS APPLICATION WHICH OPERATES PROPERLY WITH THE EARLIER VINTAGE ISIS DRIVERS WILL CEASE TO OPERATE PROPERLY IF THE OLDER ISIS DRIVER IS REPLACED WITH A NEWER ISIS DRIVER REQUIRING THE PIXEL TRANSLATIONS RUNTIME DLL VERSION NUMBER 56.*.*.* OR HIGHER.
Support for 12 and 16-bit grayscale images and 48 and 64-bit color images is now available in Document and Medical toolkits.
LEADTOOLS now supports the following file formats:
PTOCA (Presentation Text Object Content Architecture)
LEADTOOLS now supports super-compression of 1-bit and 24-bit bitmaps.
LEADTOOLS now provides the means to get information about annotation files and delete pages from annotation files.
LEADTOOLS can perform Lossless transformations (rotate, flip and reverse) on JPEG, CMP and JPEG TIFF files. This is superior to loading the image, performing the transformation and the saving the image.
LEADTOOLS provides support for removing red-eye from images.
LEADTOOLS supports an anti-aliasing filter.
LEADTOOLS can perform Gaussian blurring.
LEADTOOLS lets you swap color channel values across the R, G and B color channels.
New functions let you give images an "old-fashioned" look by converting to "colored gray".
LEADTOOLS can add or average bitmaps within a list.
LEADTOOLS lets you resize individual regions within a bitmap.
LEADTOOLS can add motion blur to images.
New functions let you combine images using a single opacity value, or varying opacity values. Using the varying opacity values creates a feathering appearance.
LEADTOOLS lets you add borders and frames to bitmaps.
LEADTOOLS provides more support for grouping and ungrouping annotation objects.
The LEADTOOLS Image List now lets you redraw individual items within the Image List.
LEADTOOLS provides support for determining whether a magnifying glass is attached to a window, a control or an object.
Support for ISIS ASCI tags is now provided.
LEADTOOLS now supports loading and saving layers in PSD files.
LEADTOOLS now lets you get or set pixel data for 48 and 64-bit bitmaps.
The LEADTOOLS picturize capabilities have been extended to picturize an image using a single bitmap or a list of bitmaps.
LEADTOOLS now lets you alter the shape of certain annotations by holding down the Shift key while drawing. (An Ellipse object will automatically be drawn as a circle; other annotations like notes, buttons, audio clips, etc. will automatically be drawn as squares.)
LEADTOOLS now lets you associate metafiles with hotspot annotations and freehand hotspot annotations.
LEADTOOLS now provides the ability move the name of annotation objects.
LEADTOOLS now lets you create curved regions or add a curved region to an existing region.
LEADTOOLS now lets you convert standard curves to Bezier curves.
LEADTOOLS can now resize bitmaps during the load process.
LEADTOOLS now lets you save bitmaps to files in memory.
LEADTOOLS supports Exif extensions, so you can now retrieve embedded audio data and stamps contained in Exif files as extension data.
Changed or removed functions
LAnnotation::GetBoundingRect takes 1 new parameter.
LAnnotation::GetName (takes 2 new parameters) has been removed
LAnnotation::SetName (takes 2 new parameters) has been removed
LAnnotation::GetRect takes 1 new parameter.
LAnnContainer::Save takes 1 new parameter.
LAnnContainer::SaveMemory takes 1 new parameter.
LAnnContainer::SaveOffset takes 1 new parameter.
LBaseFile::GetDefaultLoadFileOption takes 1 new parameter.
LBaseFile::GetDefaultSaveFileOption takes 1 new parameter.
LBitmapBase::Allocate supports a new memory type flag.
LBitmap::GetHistogram takes 1 new parameter and supports 12 and 16-bit grayscale images.
LBitmap::Halftone takes 1 new parameter and supports 12 and 16-bit grayscale images.
LBitmap::HistoEqualize takes 1 new parameter.
LBitmap::MedianFilter supports 12 and 16-bit grayscale images.
LBitmap::MaxFilter supports 12 and 16-bit grayscale images.
LBitmap::MinFilter supports 12 and 16-bit grayscale images.
LBitmap::RemapIntensity takes 1 new parameter.
LFile::LoadFile supports a new flag.
LFile::LoadOffset supports a new flag.
LFile::LoadTile supports a new flag.
The following functions have been removed:
This function is now inherited from the parent LAnnotation class. See LAnnotation::GetPredefinedMetafile.
This function is now inherited from the parent LAnnotation class. See LAnnotation::SetPredefinedMetafile.
The BITMAPHANDLE structure has changed to allow the user to limit the number of GDI resources LEAD bitmaps require. This change could cause existing source code to no longer compile. However, this change WILL NOT affect existing applications/binaries. The purpose of this change is to allow users to load many images, without each using up GDI resources by creating an HPALETTE. The former (and default) behavior is that for each image that is loaded from file, an HPALETTE GDI object is created. There is a limited number of GDI objects available and loading a large number of small images can exhaust the GDI memory. In this case, you will get "out of memory" errors, although you have plenty physical or virtual memory available.
The LOADINFO structure now has 4 new members.
The FILEINFO structure has 1 new member.
The SAVEFILEOPTION structure has 1 new member.
MINSEGMENT (MRC module)
SEGMENTDATA (MRC module)
Annotations (Document/Medical only)
LBitmapBase::Add has been removed
Mixed Raster Content Module
Medical Web Viewer .NET
.NET, Java, Android, and iOS/macOS Assemblies