Görüntüleri program aracılığıyla yeniden boyutlandırmak için http://www.codeproject.com/Tips/552141/Csharp-Image-resize-convert-and-save kodunu kullandım. Ancak, bu proje, Windows 10 uygulamalarında bulunmayan System.Drawing
kitaplıklarını kullanır.Görüntüyü Windows'da Kopyalama ve Yeniden Boyutlandırma 10 UWP
yerine Windows.UI.Xaml.Media.Imaging
den BitmapImage
sınıfını kullanarak denedi, ama System.Drawing
bulundu işlevselliğini sunmak için görünmüyor ..
kimse de (küçültün) görüntüleri yeniden boyutlandırmak edememek herhangi bir şans vardı Has Windows 10 mu? Uygulamam, farklı biçimlerdeki/boyutlardaki birden çok kaynaktan gelen görüntüleri işliyor olacak ve yalnızca görüntü boyutunu görüntülendiği Image
'a sığdırmak yerine, yer kazanmak için gerçek görüntüleri yeniden boyutlandırmaya çalışıyorum.
DÜZENLEME
Yukarıda belirtildiği bağlantıdan kodunu değiştirmiş ve benim özel ihtiyaç için çalışır yazarlardan sahibiz. İşte burada:
public static BitmapImage ResizedImage(BitmapImage sourceImage, int maxWidth, int maxHeight)
{
var origHeight = sourceImage.PixelHeight;
var origWidth = sourceImage.PixelWidth;
var ratioX = maxWidth/(float) origWidth;
var ratioY = maxHeight/(float) origHeight;
var ratio = Math.Min(ratioX, ratioY);
var newHeight = (int) (origHeight * ratio);
var newWidth = (int) (origWidth * ratio);
sourceImage.DecodePixelWidth = newWidth;
sourceImage.DecodePixelHeight = newHeight;
return sourceImage;
}
Bu şekilde iş gibi görünüyor, ama ideal değil orijinal BitmapImage
değiştirmek yerine, ben değiştirmek ve yerine dönmek için bunun yeni bir/kopyasını oluşturmak istiyoruz. Daha doğrusu orijinal değiştirerek daha özgün BitmapImage
bir kopyasını döndürmek isteyebilirsiniz
Yanıltıcı başlık, OP. Resmi yeniden boyutlandırmanın bir yolu var, gerçekten yapmak istediğiniz şey orijinal görüntünün bir kopyasını oluşturmak, kopyayı yeniden boyutlandırmak, sonra da kopyayı döndürmek. –
@BrianDriscoll Sorgulamadan önce soruyu yayınladım. Düzenleme, orijinal görüntüyü yeniden boyutlandırmak için kod ekledi. Bunu bir cevap olarak gönderirdim, ama henüz yeterince uzun sürmedi. Ama yeni unvanı beğeniyorum. Teşekkürler. –
Sadece resmin sabitini oluşturabiliyor musunuz? Veya özel bir mülkün resminin orijinal kopyasını referans olarak kullanabilir ve aynı işlevi kullanabilir misiniz? – aguertin