dmitryshelamov.ui-cropping-image
1.0.0
dotnet add package dmitryshelamov.ui-cropping-image --version 1.0.0
NuGet\Install-Package dmitryshelamov.ui-cropping-image -Version 1.0.0
<PackageReference Include="dmitryshelamov.ui-cropping-image" Version="1.0.0" />
paket add dmitryshelamov.ui-cropping-image --version 1.0.0
#r "nuget: dmitryshelamov.ui-cropping-image, 1.0.0"
// Install dmitryshelamov.ui-cropping-image as a Cake Addin
#addin nuget:?package=dmitryshelamov.ui-cropping-image&version=1.0.0
// Install dmitryshelamov.ui-cropping-image as a Cake Tool
#tool nuget:?package=dmitryshelamov.ui-cropping-image&version=1.0.0
UI-Cropping-Image
A simply UI cropping image library for WPF that use adroner layer. Some screenshots:
Interface of sample app
<img src="https://github.com/dmitryshelamov/UI-Cropping-Image/blob/master/cropped-demo.png" width="400">
Cropping result image
<img src="https://github.com/dmitryshelamov/UI-Cropping-Image/blob/master/cropped-result.png" width="400">
Cropping result image info
<img src="https://github.com/dmitryshelamov/UI-Cropping-Image/blob/master/cropped-result-info.png" width="400">
Main Workflow:
- Load image
- Select cropping area
- Crop and save image
Main features:
- Can draw/redraw cropping rectangle
- Can move cropping rectangle
- Can resize cropping rectangle
- Shadow area outside of cropping rectangle
- Show current size of cropping rectangle
Basic Setup
XAML:
<Grid x:Name="RootGrid" MouseLeftButtonDown="RootGrid_OnMouseLeftButtonDown">
<Canvas x:Name="CanvasPanel"
Grid.Column="1">
<Border Height="{Binding ElementName=CanvasPanel, Path=ActualHeight}" Width="{Binding ElementName=CanvasPanel, Path=ActualWidth}" Background="LightBlue">
<Image x:Name = "SourceImage"
Stretch="Fill"/>
</Border>
</Canvas>
</Grid>
Code Behind:
public CroppingAdorner CroppingAdorner;
private void RootGrid_OnMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
CroppingAdorner.CaptureMouse();
CroppingAdorner.MouseLeftButtonDownEventHandler(sender, e);
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
AdornerLayer adornerLayer = AdornerLayer.GetAdornerLayer(CanvasPanel);
CroppingAdorner = new CroppingAdorner(CanvasPanel);
adornerLayer.Add(CroppingAdorner);
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET Framework | net471 is compatible. net472 was computed. net48 was computed. net481 was computed. |
This package has no dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.0 | 1,381 | 3/23/2018 |
Initial Release