When the ShapeTool is active and you execute another tool (lets say DrawTool) the UI becomes partially unresponsive. This includes the tools section and the tool settings panel. The issue is reproducible in a NoXaml scenario (using implicit styles) and only if the Telerik.Windowls.Controls.ImageEditor.xaml ResourceDictionary is merged in the resources of the view where the control is defined (example: MainWindow.Resources). To work this around define the ResourceDictionary in App.xaml.
Drawing with the draw tool over the image with big size (e.g. 3000 x 2500) result in loss of quality. Workaround: In the DrawCommand use the following method to create a BitmapSource which should be used for creating a RadBitmapImage. public RadBitmap Execute(RadBitmap source, object context) { ... ... ... BitmapSource bitmapSource = GetBitmapSource(source.Width, source.Height, canvas); return new RadBitmap(bitmapSource); } private BitmapSource GetBitmapSource(int width, int height, Canvas surface) { Size size = new Size(width, height); surface.Measure(size); surface.Arrange(new Rect(size)); // Create a render bitmap and push the surface to it RenderTargetBitmap renderBitmap = new RenderTargetBitmap( (int) size.Width, (int) size.Height, 96d, 96d, PixelFormats.Pbgra32); renderBitmap.Render(surface); return renderBitmap; }
When Depth property is set it is expected that the undo stack would not keep more items than the depth value. However, this behaviour is not working in ImageHistory class and could lead to OutOfMemoryException when the stack gets full of ImageHistoryItem instances. Steps to reproduce: 1. Open ImageEditor and load some image. 2. Set ImageEditor.History.Depth = 1. 3. Make a few rotations. Expected: When making Undo you should be able to undo only the last rotation. Actual: You can Undo all the rotations meaning that Depth property is not respected.
In Shape and DrawText tools there are strings which are not changed if the current culture is changed during the lifetime of an application.
Introduce a special file format for RadImageEditor which enables to edit the changes made on an image. For example: When the user opens the image at some point in the time, he/she should be able to edit the made changes on the image - e.g. to remove the drawn text or shapes.
When RadBitmap objects which sources are big images (e.g. 2000x1500) are rotate, image quality loss is observed. Internally, RadBitmap.Rotate method is used.
The user should create a custom tool if they need to change the default settings of the DrawTextTool. It would be nice to provide an easier way for achieving this.
Enable the users to set default values for Shape tool properties (fill, stroke, thickness, border color, is ratio locked).
When ScaleFactor property is set to 0, zooming in/out with the mouse wheel is not working. Available in R1 2017 Release
Expose property (e.g. InitialPosition) that will set X and Y start in CropCommandContext from CropTool To achieve this with the current API this you can get the CropAdorner control from the visual tree and set its CropRect property. private void imageEditor_Loaded(object sender, RoutedEventArgs e) { ImageEditorRoutedCommands.ExecuteTool.Execute(new CropTool(), this.imageEditor); var cropAdorner = this.imageEditor.FindChildByType<CropAdorner>(); cropAdorner.CropRect = new Rect(10, 10, 100, 100); }
Introduce support to rotate the image for any degrees. Currently it can rotate the image on 90, 180 and 20 degrees.
Multiple operations applied on a big RadBitmap can cause OutOfMemoryException because of used and not disposed unmanaged resources in a WriteableBitmap object. Steps to reproduce: - Execute multiple times the Rotate tool Observe: The memory goes up and retains such. Expected: The unmanaged memory is cleared. Findings: the memory leak is related to the WPF class WriteableBitmap which is internally used by the RadBitmap. Attached is a sample project illustrating the problem using only WPF classes. Note: At this point, we are not aware of a possible fix.
When a RadBitmap is rotated to degrees for which sine and cosine are not integers (every angle which is not 90, 180, 270 or 360) applies wrongly calculated transformations and the bitmap' size is no longer correct. For example, rotating a bitmap to -30 and then to 30 degrees changes its size.
If an image with dpi different than 96 (for example 300dpi) is imported and then some operations are made on it, the exported image is with 96dpi.
The feature will be available in our official release 2015 Q2 .
"Transparent" and "Automatic" strings in all ColorPickers in ImageEditor are hard coded. The fix will be available in our official release 2015 Q1.
When user is dragging the crop rectangle, the cursor should be a hand (for example).