2015-10-26 43 views
34

Projemi .NET 4.5'den .NET Core'a (ASP.NET Core ile) güncelleştirdim. Bir görüntüyü yeniden boyutlandırmak için System.Drawing'dan bitmap nesnesini kullanan önceki sürümümde çok basit bir kod vardı..NET Core ile görüntülerin işlenmesi

Anladığım kadarıyla, System.Drawing .NET Core'da kullanılamaz çünkü çapraz platform değil, bunun yerine ne kullanılabilir?

Bunu araştırdım ve hiçbir şey bulamıyorum. Bulabildiğim tek şey, üzerinde hiç kod bulunmayan this gönderisidir.

+0

Bağlantınızdaki github'da [this] (http://imageresizing.net/) bulundu. Faydalı? – SimpleVar

+0

Muhtemel kopyası [Mono üzerinde ASP.NET 5 çalıştıran Ubuntu'daki görüntüleri MVC 6 ile yeniden boyutlandır] (http://stackoverflow.com/questions/36643720/resize-images-with-mvc-6-on-ubuntu-running-asp -net-5-on-mono) –

+0

Anlayışım için .NET (Core) ekibi bunu hala Xamarin ekibiyle tartışıyor. Xamarin, yine Google Chrome'un grafik kütüphanesi olan çapraz platform Skia kütüphanesi için bir sarıcı olan SkiaSharp adlı bir kütüphane kurdu. Android, iOS, Linux, Windows, vb. Altında çalışır, bu da onu .NET Core için mükemmel bir eşleşme haline getirir. Ancak bugün itibariyle, bunları .NET Core (https://blog.xamarin.com/cross-platform-2d-graphics-with-skiasharp/) için bitirmediler. Bahislerim, bu kütüphanenin .NET Core ve çizim için gelecekteki bir hikaye olacak. – Thomas

cevap

27

Yasal Uyarı: Bu benim yazılımım.

.NET Core üzerinde çalışan bir çapraz platform 2D Graphics kitaplığı üzerinde çalışıyorum Şu anda alfa ancak zaten kapsamlı bir özellik kümesini destekliyor.

https://github.com/JimBobSquarePants/ImageSharp

Örnek kullanım.

using (FileStream stream = File.OpenRead("foo.jpg")) 
using (FileStream output = File.OpenWrite("bar.jpg")) 
{ 
    Image image = new Image(stream); 
    image.Resize(image.Width/2, image.Height/2) 
     .Greyscale() 
     .Save(output); 
} 
+0

Peki ya belirli bir OS tuvalinde çizim yapmaktan ne haber? Bunu işletim sisteminden uzaklaştıran kimse var mı? – eschneider

+0

Bir UI çerçevesi gibi mi demek istiyorsun? https://github.com/AvaloniaUI/Avalonia –

+0

TK, grafikler için bir Net Çekirdek kütüphanesine sahiptir. Sonunda bir UI lib'i beklerim ama TK'yi sarabilir. – IAbstract

16

Ben Mono kaynağa göre .NET Çekirdek System.Drawing bir uygulama buldum muhafaza ediliyor:

:

Nuget paketi olan

sen bunu başvurabilir hangisi NET Çekirdek App en project.json ile:

{ 
    "dependencies": { 
    "CoreCompat.System.Drawing": "1.0.0-beta006", 
    ... 
    }, 
} 
+2

Bu, yayın öncesi yazılımıdır, bu nedenle "ana sayfa göster" kutusunu işaretlediğinizden emin olun. – user3791372

İlgili konular