Version 14.2.0
New Features
◼Added: Native PNG is now only compiled into project if ieNativePNG is included in uses
◼Added: Native JPEG2000 is now only compiled into project if ieNativeJ2K is included in uses
◼Added: Native JPEG is now included in a separate unit, ieNativeJPEG (for future optional exclusion)
◼Added: IEGlobalSettings().ImageEnVersion.Status to output status of all plug-ins and imaging engines
◼Added: TImageEnMView printing supports specification of image indexes
◼Added:
InsertTIFFImageFile and
InsertTIFFImageStream support non-TIFF files
◼Added:
InsertTIFFImageFile overload to specify an output file
◼Added:
InsertTIFFImageFile and
InsertTIFFImageStream automatically check for matching byte orders and clean up on failure
◼Added:
TIETIFFHandler automatically checks for supported byte orders
◼Added: More robust checking of 64bit stream positioning
◼Added:
TIETIFFHandler supports progress display
◼Added:
TIETIFFHandler.GetPageBitmap method
◼Added: Auto-merge option when adding new layers (added directly to background)
◼Added: Improved layout of DLL loading log
◼Added: Error icons for TImageEnMView when memory issues occur
◼Added:
TIEWia.DocumentCapabilities and
TIEWia.DocumentStatus
◼Added: Holding Alt key will rotate border shape for text layers
◼Added:
Color Palettes: Magma, Inferno, Plasma, Viridis, Cividis, Twilight, Turbo, Berlin, Managua, Vanimo
◼Added:
MapGrayToColor and
AssignColorMap scale the map if it does not contain 256 entries
◼Added: Debug visualizer outputs the status of all DLLs and imaging engines
◼Added: Property and status information is grouped in the debugging visualizer
◼Added: Image effect can be quickly applied to a bitmap using a string, e.g. "RGB/1/255/0/0"
◼Added: Improved readability of image effect as string
◼Added: Improved debug information that is shown when hovering over a TIEBitmap
◼Added: Debug information can be displayed over TImageEnView and TImageEnMView control windows while debugging
◼Added: More readable debug information is displayed by hovering over ImageEn objects and variables
◼Added: Debugging visualizer supports keyboard shortcuts
◼Added: Debugging visualizer allows you to modify ImageEn objects, TBitmaps and color variables
◼Added: Debugging visualizer includes buttons in all views to change the image index
◼Added: Views are synchronized in alpha channel debugging visualizer
◼Added: Can show just a single color channel in the debugging visualizer
◼Added: Debugging visualizer can launch images to default editor
◼Added: Ctrl key can optionally be used for multiple selection of layers
◼Added: Improved centering of Twain dialogs
◼Added: Method to copy ImageEn debugging information to the clipboard
◼Added:
Application to automatically upgrade projects to resolve compatibility issues
◼Added: TImageEnMView animations support mouse wheel
◼Added: Access to color profile of current monitor
◼Added: Experimental support for popup editor for editing PDF text objects and annotations
◼Added: Remove Isolated Pixels available in Proc Previews dialog
◼Added: Feathering option when setting transparency in Proc Previews dialog
◼Added: Trackbar used to set pixelize effect in Proc Previews dialog
◼Added: Localization improvements in Proc Previews dialog
◼Added: Shows a hand-pan cursor if miScroll is the only interaction
◼Added: TImageEnView mouse interaction to scroll when space bar is pressed
◼Added: Links in PDF documents to external files can now be enabled
◼Added: Can now load non-standard TIFF files that store multiple frames as tiles (TIFF_GetTile can be used to specify which frame to load)
◼Added: Improved support for Delphi 64bit IDE (Note: 64bit IDE still does not support debugging visualizers or IDE menu customization)
◼Added: Replaced some internal methods for more optimized Delphi ones
◼Added:
CalcImagePalette can work with a rectangular selection, returns the number of colors found and nulls any invalid array values
◼Added: Improve IEVision
MatchTemplate helper method to cope with images that do not have an alpha channel
◼Added: Encryption and decryption of streams and text using standard algorithms: MD2, MD4, MD5, SHA1, SHA256, SHA384 and SHA512
◼Added: New options for TIEFolderTree and WindowsSelectDirectory(): foBrowseIncludeURLs, foBrowseFileJunctions, foComputersOnly, foPrintersOnly
◼Added: WindowsSelectDirectory() will expand the specified folder
◼Added: Updated PDFium to v140/7269
◼Added: Objects on a PDF page can be marked non-visible
◼Added: Objects can be inserted into PDF pages by z-index
◼Added: Use new PDFium method for changing the z-order of page objects (arranging objects)
◼Added: Version checking for PDFium DLL
◼Added: Updated LibRaw to 0.21.4
Bug Fixes
◼Fixed: PNG files may not load natively if IEVision is undefined
◼Fixed: Does not fallback to EXIF resolution when no DPI found in JPEG header (Native and DLL)
◼Fixed: Potential twain dialog handle error
◼Fixed: Some difficulty deselecting multi-selected layers
◼Fixed: Rounding errors when drawing TIELineLayer at low zoom
◼Fixed: Twain dialog centering can cause paint issues on Twain dialogs
◼Fixed: Copying to clipboard does not include owner handle
◼Fixed: Error when using native PDF code to create files > 2GB
◼Fixed: Potential A/V when editing points of line and angle layers
◼Fixed: TIEMediaFoundationSourceReader.PauseCapture is slow because it always waits for a time-out
◼Fixed: TIEFolderTree may not set folder if specified in FormCreate
◼Fixed: Position is offset when moving or sizing PDF objects with keyboard
◼Fixed: Clicking to select an effect position in the Proc Previews dialog causes a zoom
◼Fixed: Loading icons of TImageEnMView may not display within thumbnail area
◼Fixed: Click area for web links is sometimes not fully accurate
◼Fixed: TImageEnView.OnSelectionChanging/OnSelectionChange not called for keyboard adjustments
◼Fixed:
CalcImagePalette does not return the actual palette when the image is gray-scale
◼Fixed: IEDecode64 processes trailing padding chars
◼Fixed: Params.ImageCount is 0 when loading from WebP DLL
◼Fixed: EXIF_AsStr may not return some string values
◼Fixed: Exceptions when using EXIF_AsStr instead of setting null values
◼Fixed: TIEMetaList may not properly clear set meta-data fields
Changes to Classes
◼Added:
TImageEnMView.MultiSelectedImagesList is now a read/write property
◼Added:
TIETIFFHandler.PageCount property
◼Added:
TImageEnView.LayersSelectedList
◼Added:
TIECanvas.FontTransparency
◼Added:
TIEICC.SaveToFile
Changes to Method Parameters
◼Added:
GenerateDicomColorPalette includes ColorCount parameter
Demo Changes
◼Added: Many improvements to TIFF Handler demos (Demos\InputOutput\TiffHandler2\TiffHandler2.dpr)
◼New: Imaging Engines Demo (Demos\InputOutput\ImagingEngines\ImagingEngines.dpr)
◼Added: New methods added to Every Method demo (Demos\ImageEditing\EveryMethod\EveryMethod.dpr)
Compatibility Issues
◼Changed Behavior: To include native PNG support (32bit apps), you must add ieNativePNG to the uses clause of one of your project units
◼Changed Behavior: To include native JPEG2000 support (32bit apps), you must add ieNativeJ2K to the uses clause of one of your project units
◼Potential Future Change: You should add ieNativeJPEG to the uses clause of one of your project units, as it may be optional in the future
◼Unit Renamed: The hyieutils unit has been renamed iexUtils. The hyiedefs has been renamed iexDefs. This is to avoid any break in functionality regarding native PNG and JPEG2000 support. You should perform a Find/Replace across your project units or use our
Compatibility Fixer
◼Component Moved: TImageEn component moved to the legacy hyiedefs unit
◼Changed Behavior: loResizeOnRotate is not enabled by default for
LayerOptions, and has no effect when
AspectRatioLocked is enabled to prevent duplicated behavior
◼Changed Behavior:
OnActivateTextEditor and
OnDeactivateTextEditor will activate when editing PDF objects and annotations and the LayerIndex may not be valid
◼Renamed: TIEImageEffect.Transparency_ChromaFeathering has been renamed
Transparency_Feathering and also applies when setting transparent colors (default is now 0)
◼Changed Behavior: peTransparency has moved from the ppeColorAdjustments set to ppeEditingFunctions
◼Changed Behavior: pePixelize has moved from the ppeEditingFunctions set to ppeSpecialEffects
◼Removed: ppeColorAdjust and ppeEffects have been removed. Instead use
ppeColorAdjustments,
ppeEditingFunctions or
ppeSpecialEffects
◼Removed: TImageEnView.AutoFixRotationBorders has been removed. Instead use: ImageEnView1.LayerOptions := ImageEnView1.LayerOptions + [loAutoFixBorders];
◼Removed Parameter: TImageEnProc.
Rotate/
RotateAndCrop() no longer include a boolean AntiAlias parameter. Instead you should pass ierNone to disable anti-aliasing, or specify an anti-alias method, e.g. ierFast. If you have used ImageEnProc1.Rotate(45) (i.e. with only one parameter and a non-90 degree rotation) then the anti-aliasing has changed from "None" to "Fast". To preserve the old behavior, change your code to: ImageEnProc1.Rotate(45, ierNone);
◼Moved: Instead of TImageEnIO.DialogsMeasureUnit / TImageEnMIO.DialogsMeasureUnit use: TIEGlobalSettings().
DialogMeasureUnit
◼Changed Default:
TImageEnMView.ThumbnailDisplayFilter now defaults to rfFastLinear (instead of rfNone)
See Also
◼Complete History
◼Updating and Compatibility