1. RadImageEditor with ZoomToCursor enable.
2.Apply ZoomOut function until render width/height less than view width/height
result => Image zoom at center of viewport, not zoom at cursor position.
The RadImageEditorUI's tools (selection, shape, text, etc.) have different UI element representing their settings. Those are hosted in a settings panel. In case there are many options that cannot fit in the vertical size of the control, a scrollbar should get displayed. One example of this is the SelectionTool.
In the Office2019 and VisualStudio2019 themes, the vertical scrollbar doesn't get displayed.
To work this around, extract the ControlTemplate of SettingsPanel control. Then find the first RowDefinition of the root Grid panel and change its Height from Auto to star ( * ).
<Style TargetType="telerik:ToolSettingsPanel">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="telerik:ToolSettingsPanel">
<Grid Background="{TemplateBinding Background}">
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<!-- other xaml here -->
I'm currently interessted in the new features of ImageEditor. But when I want to use it I don't want the write code, I just want to use the Sample Browser and try it out and see if it fits my needs. But the current version of Sample Browser does'nt support the new features out of the box! This is annoying.
The localization strings in Shape tool and Draw tool don't have translations. As a workaround, these values could be manually added to the resource files (.resx). Image Editor Localization Help Article: http://docs.telerik.com/devtools/wpf/controls/radimageeditor/localization
As a workaround you can subscribe to the Loaded event of the control where you can set the IsPanningEnabled property. private void ImageEditor_Loaded(object sender, System.Windows.RoutedEventArgs e) { this.imageEditor.IsPanningEnabled = true; } Available in LIB version: 2017.1.213
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.
When RadBitmap objects which sources are big images (e.g. 2000x1500) are rotate, image quality loss is observed. Internally, RadBitmap.Rotate method is used.
When ScaleFactor property is set to 0, zooming in/out with the mouse wheel is not working. Available in R1 2017 Release
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.
"Transparent" and "Automatic" strings in all ColorPickers in ImageEditor are hard coded. The fix will be available in our official release 2015 Q1.