This is a .NET Core port of the Lovell Fuller's lovely high performance Node.js image processor sharp / sharp github).
Sharp uses the low-level image processor libvips / libvips github.
This port makes use of Kleis Auke Wolthuizen's libvips .NET binding NetVips / NetVips github.
You will need to provide the appropriate NetVips.Native package for your platform.
I haven't implemented everything, just the pieces I've needed so far. Maybe at some point I'll add-to and/or refactor it.
using System.Threading.Tasks;
using SharpSharp;
namespace Demo {
internal static class Program {
private static async Task Main() =>
(await ImagePipeline.FromUriAsync("https://www.fillmurray.com/300/300"))
.Resize(150, 150)
.Sharpen()
.Webp()
.ToFile("murray.webp");
}
}