Chronos.Blazor.Cropper
1.0.1
See the version list below for details.
dotnet add package Chronos.Blazor.Cropper --version 1.0.1
NuGet\Install-Package Chronos.Blazor.Cropper -Version 1.0.1
<PackageReference Include="Chronos.Blazor.Cropper" Version="1.0.1" />
paket add Chronos.Blazor.Cropper --version 1.0.1
#r "nuget: Chronos.Blazor.Cropper, 1.0.1"
// Install Chronos.Blazor.Cropper as a Cake Addin #addin nuget:?package=Chronos.Blazor.Cropper&version=1.0.1 // Install Chronos.Blazor.Cropper as a Cake Tool #tool nuget:?package=Chronos.Blazor.Cropper&version=1.0.1
Blazor.Cropper
A blazor library provide a component to crop image
=>
It is:
- almost full c#(with only 3 lines of js)
- mobile compatible
- lighweight
- support proportion
- GIF crop support(only for files smaller than 1mb)
For a long time, crop image in blazor bother me a lot. That's why I tried to implement a cropper in blazor.
Usage
to use it, you should first paste following code into your index.html:
<script src="_content/Chronos.Blazor.Cropper/CropHelper.js"></script>
Then, you can install our nuget pkg and use it like follow:
@page "/cropper"
<h1>Cropper</h1>
<InputFile OnChange="OnInputFileChange"></InputFile>
@if (!string.IsNullOrEmpty(imgUrl))
{
<center>
<h2>Crop Result:</h2>
<img src="@imgUrl"/>
</center>
}
@if (file!=null)
{
<Cropper ImageFile="file" OnCrop="@OnCropedAsync"></Cropper>
}
@code {
IBrowserFile file;
string imgUrl = "";
void OnInputFileChange(InputFileChangeEventArgs args)
{
file = args.File;
}
async Task OnCropedAsync(Stream stream)
{
var bytes = new byte[stream.Length];
await stream.ReadAsync(bytes,0,(int)stream.Length);
var format = "image/png";
imgUrl = $"data:{format};base64,{Convert.ToBase64String(bytes)}";
}
}
For more details, see the sample project.
To build it, simply clone it and run it in visual studio. The running result should be like this:
Note
In many cases, I found It's really slow to convert image data to base64 format and set it as img src(many times slower than image crop process). So I stronly recommend you to avoid doing this in blazor.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 is compatible. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net5.0
- Microsoft.AspNetCore.Components.Web (>= 5.0.0-rc.1.20451.17)
- SixLabors.ImageSharp (>= 1.0.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on Chronos.Blazor.Cropper:
Repository | Stars |
---|---|
CnGal/CnGalWebSite
CnGal是一个非营利性的,立志于收集整理国内制作组创作的中文Galgame/AVG的介绍、攻略、评测、感想等内容的资料性质的网站。
|
Version | Downloads | Last updated | |
---|---|---|---|
1.2.16 | 13,759 | 8/20/2023 | |
1.2.15 | 508 | 8/20/2023 | |
1.2.14 | 19,868 | 1/5/2023 | |
1.2.13 | 16,441 | 10/8/2022 | |
1.2.12 | 8,263 | 9/19/2022 | |
1.2.11 | 1,452 | 8/20/2022 | |
1.2.10 | 885 | 8/17/2022 | |
1.2.7 | 2,483 | 6/24/2022 | |
1.2.6 | 1,351 | 6/15/2022 | |
1.2.5 | 1,069 | 5/27/2022 | |
1.2.4 | 815 | 5/27/2022 | |
1.2.3 | 901 | 5/25/2022 | |
1.2.2 | 8,689 | 3/17/2022 | |
1.2.1 | 907 | 3/16/2022 | |
1.2.0 | 2,885 | 11/12/2021 | |
1.1.8 | 917 | 10/21/2021 | |
1.1.7 | 789 | 10/17/2021 | |
1.1.6 | 1,125 | 8/1/2021 | |
1.1.5 | 798 | 8/1/2021 | |
1.1.4 | 1,056 | 6/1/2021 | |
1.1.2 | 1,328 | 11/18/2020 | |
1.1.1 | 914 | 11/18/2020 | |
1.1.0 | 851 | 11/18/2020 | |
1.0.7 | 940 | 11/18/2020 | |
1.0.6 | 816 | 11/18/2020 | |
1.0.5 | 397 | 9/27/2020 | |
1.0.4 | 269 | 9/26/2020 | |
1.0.3 | 442 | 9/26/2020 | |
1.0.2 | 246 | 9/21/2020 | |
1.0.1 | 278 | 9/21/2020 | |
1.0.0 | 292 | 9/20/2020 |