ImageEn

What's New


Version 14.0.0

New Features

Added: ImageEn supported under Delphi 64bit IDE
Added: TImageEnVect code is no longer included when compiling unless used, saving 450KB from the EXE
Added: Attribution comment can be customized in files saved by ImageEn
Added: No maximum point limit for drawing of shapes
Added: Improved drawing of shapes at very low quality settings
Added: Polyline layers with complex paths (e.g. bezier curves) can be freely rotated
Added: TIEShapeLayers use GDI+ anti-aliasing
Added: Any ImageEn shape can be used for layer and selection grips
Added: When multiple layers are scaled together, their positions are scaled to maintain the overall look
Added: GetHash supports the alpha channel
Added: TImageEnMIO printing supports auto-orientation
Added: Improved some toolbar glyphs
Added: IEShowImagePreview supports TImageEnMView previews with navigation
Added: Preview Image item in TImageEnMView popup menu
Added: Four new shapes: Magnifying Glass, Zoom In, Zoom Out and Pan
Added: New zoom hover button for TImageEnView
Added: Options to force centering of Twain dialogs
Added: Objects can be arranged on a PDF page (i.e. change of z-order)
Added: Layer objects can be used with the PDF Viewer and converted to PDF objects (Experimental)
Added: Setting of default video format for MMF can be disabled to greatly speed up capture initialization
Added: Code optimization
Added: Aspect ratio is maintained when cropping or rotating layers via Previews dialog
Added: Easier rotation of fixed angles in Previews dialog
Added: Methods to determine if a point is within the polygon of a Polyline or Shape layer
Added: Better handling of TIFF files with tiles and very large blocks of Photoshop meta-data
Added: Vectorizing of raster images to SVG
Added: RemoveIsolatedPixels supports full color images
Added: Support for audio devices with MMF
Added: Layer images are cached at smaller sizes at high zoom levels
Added: TIOParams.ResetInfo clears large TIFF photoshop meta data blocks
Added: Verbose exceptions option for TIEDirectShow
Added: New shortcuts for TImageEnView, TImageEnMView and TIERichEdit: Zoom In, Zoom Out, Reset Zoom, Show Rulers, Undo and Redo
Added: KeyInteract property to handle all keyboard interaction for TImageEnView
Added: AutoOrient parameter for GetImageDetails
Added: Arrow cursors when hoving over TImageEnView buttons
Added: Any shape can be use for TIEColorCurve.PointShape
Added: Bar/Arrow and decorative end styles for line layers
Added: Use system cursor for rotated image layers for cleaner styling
Added: New property for Twain compatibility options


Bug Fixes

Fixed: ParamsFromFile error for WIC formats
Fixed: Drag selection may be triggered unexpectedly in TImageEnMView
Fixed: Difficult to exit layer point editing mode
Fixed: Polygon layer resize and point editing interactions don't work well together
Fixed: Some issues with images in SVG
Fixed: Unexpected wrapping with TImageEnProc.DrawTextEx()
Fixed: Adding a frame wrongly positions text with TImageEnProc.DrawTextEx()
Fixed: Scaling issues with rotated polygons and shapes exported to SVG
Fixed: Bezier curve points may shift when moving layers
Fixed: Text becomes selected when clicking PDF navigation buttons
Fixed: Text may be cut off in right-aligned text layers
Fixed: Editing of PDF objects uses strange positioning if view is rotated
Fixed: Issue with asymmetric scaling and rfFastLinear
Fixed: If media type has not been specified for MMF, default media type was not returned
Fixed: Memory issue if load very large TIFF that uses tiles
Fixed: TImageEnView scrollbar position not updated when application is themed
Fixed: Initialization issue for TIEFolderTree if used on a tab
Fixed: Folder specific popup menu not shown when clicking background of TImageEnFolderMView
Fixed: Layer Fix methods do not automatically update the TImageEnView
Fixed: loAutoFixRotation can cause multiple selection
Fixed: Memory issue when set TImageEnView.SetExternalBitmap to nil, if already nil
Fixed: Potential loss of quality when accessing TIELayer.Bitmap for non-image layers
Fixed: Order of colors not correct when reducing color count for gray scale to less than existing count
Fixed: Layer undo may not reset the layer cache


Changes to Classes

Added: TIEButtonInteraction.MaxHeightButtons
Added: TIECanvas.DrawShape
Added: New TIEAcquireParams properties: StandardSize, AcquireCount, AutoDeskew, XScaling and YScaling
Added: TImageEnView.OnHoverToolbar and TIERichEdit.OnHoverToolbar
Added: Exposed TImageEnMView.SelectImage so the active image can be specified without affecting the existing selection
Added: TIEGlobalSettings.DefaultAlphaThreshold
Added: TImageEnView.OnPlayFrame


Changes to Method Parameters

Added: Width and Height parameters for LayersAdd
Added: CropThreshold parameter for AutoCrop
Added: CheckAlpha parameter for SelectMagicWand and LayersCreateFromEdge
Added: CropTransparentBorder returns the crop rectangle


Demo Changes

New: Vectorize to SVG demo (Demos\InputOutput\VectorizeToSVG\VectorizeToSVG.dpr)
New: PDF Objects with Layers demo (Demos\PDF\PDFPageObjects_FromLayers\PDFPageObjectsLayers.dpr)
Added: Improvements to MMF demos (Demos\VideoCapture\MediaFoundationCam\MediaFoundationCam.dpr)
Added: Animating of images in Complete Editor demo (Demos\ImageEditing\CompleteEditor\PhotoEn.dpr)
Added: Improvements to Twain demo (Demos\ImageAcquisition\Twain\TwainDemo.dpr)


Compatibility Issues

Changed: TIFF_PhotoshopImageSourceData has changed from type TIEArrayOfByte to TStream for better memory handling
Changed: Items of KeyboardShortcuts now have the prefix ieks, rather than ies, e.g. iesCopy is now ieksCopy
Removed: loKeyboardShortcuts is deprecated. You should use vkiLayerEditing of KeyInteract instead
Removed: iesoAllowMoveByKeyboard is deprecated. You should use vkiMoveSelection of KeyInteract instead
Removed: TImageEnView.KeyboardShortcuts is deprecated. You should use vkiInteractiveTools of KeyInteract instead
Removed: TImageEnView.CropTool.GripSize. Instead use SetSelectionGripStyle
Removed: TImageEnView.CloneTool.CursorSize/CursorShape. Instead use TImageEnView.CloneTool.BrushSize
Removed: TImageEnView.CloneTool.CursorShape. Instead use TImageEnView.CloneTool.BrushShape
Changed: TIEColorCurve.PointShape is no longer a TIEPointShape, it is a TIEShape. For iepsSquare use iesRectangle, for iepsCircle use iesEllipse
Changed: Instead of IEGlobalSettings().TwainCropBufferedTransferedImage add ietcCropBufferedTransferImage to TwainCompatibilityOptions
Changed: Instead of IEGlobalSettings().ReleaseTwainResources add ietcReleaseTwainResources to TwainCompatibilityOptions
Changed: Instead of IEGlobalSettings().ReuseTwainWindowHandle add ietcReuseTwainWindowHandle to TwainCompatibilityOptions
Changed: Instead of IEGlobalSettings().ModelessSelectTwainSource add ietcModelessSelectSource to TwainCompatibilityOptions


See Also

Complete History
Updating and Compatibility