Ich bin neu in der Entwicklung von UWP-Apps und versuche, eine Bildverarbeitungs-App zu erstellen. Ich habe den Code in https://msdn.microsoft.com/en-us/windows/uwp/audio-video-camera/imaging Aber ich habe Ausnahme wie folgt: SoftwareBitmapSource :: SetBitmapAsync unterstützt nur SoftwareBitmap mit positiver Breite/Höhe, bgra8 Pixelformat und vor-multipliziert oder keine Alpha. in Code await source.SetBitmapAsync(sbitmap);
Ich frage mich, ob diese Methode wirklich so viele Einschränkungen hat und wenn ja, wenn es eine Alternative gibt, die ich verwenden sollte, hat das die geringsten Einschränkungen. Das Code-Snippet ist wie folgtWarum bekomme ich Fehler wie SetBitmapAsync()?
FileOpenPicker fileOpenPicker = new FileOpenPicker();
fileOpenPicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
fileOpenPicker.FileTypeFilter.Add(".jpg");
fileOpenPicker.ViewMode = PickerViewMode.Thumbnail;
var inputFile = await fileOpenPicker.PickSingleFileAsync();
if(inputFile != null)
{
SoftwareBitmap sbitmap;
using (IRandomAccessStream stream = await inputFile.OpenAsync(FileAccessMode.Read))
{
BitmapDecoder decoder = await BitmapDecoder.CreateAsync(stream);
sbitmap = await decoder.GetSoftwareBitmapAsync();
}
var source = new SoftwareBitmapSource();
await source.SetBitmapAsync(sbitmap);
**Exception--->**imageControl.Source = source;
}
So angezeigt zu bekommen, was die Breite/Höhe? ist es bgra8 Pixelformat? Gibt es kein Alpha oder ein vorher multipliziertes? –
@MXD Ich habe gerade einige Standardbilder in der Galerie ausgewählt, keine kann angezeigt werden. Angenommen, diese Funktion sollte normale JPEG-Dateien enthalten. Kennst du eine Substitution für diese Methode? Ich suche nach etwas, das die meisten Formate verarbeiten kann. Vielen Dank! – litaoshen