1
WriteableBitmap을 JPEG 바이트 배열로 인코딩하려고합니다. 하지만 실제로는 존재하지 않는 SaveJpeg 메서드로 예제를 발견했습니다. 그래서 ToStreamAsJpeg 메서드를 시도했지만이 메서드는 작동하지 않습니다. 단계별로 나 빠져 나가지 않아. 감사UWP JPEG 바이트 배열에 WriteableBitmap을 인코딩합니다.
WriteableBitmap을 JPEG 바이트 배열로 인코딩하려고합니다. 하지만 실제로는 존재하지 않는 SaveJpeg 메서드로 예제를 발견했습니다. 그래서 ToStreamAsJpeg 메서드를 시도했지만이 메서드는 작동하지 않습니다. 단계별로 나 빠져 나가지 않아. 감사UWP JPEG 바이트 배열에 WriteableBitmap을 인코딩합니다.
좋아, 내가 해결 다음과 같은 방법으로 내 문제 : 또한
private async Task<byte[]> EncodeJpeg(WriteableBitmap bmp)
{
SoftwareBitmap soft = SoftwareBitmap.CreateCopyFromBuffer(bmp.PixelBuffer, BitmapPixelFormat.Bgra8, bmp.PixelWidth, bmp.PixelHeight);
byte[] array = null;
using (var ms = new InMemoryRandomAccessStream())
{
BitmapEncoder encoder = await BitmapEncoder.CreateAsync(BitmapEncoder.JpegEncoderId, ms);
encoder.SetSoftwareBitmap(soft);
try
{
await encoder.FlushAsync();
}
catch { }
array = new byte[ms.Size];
await ms.ReadAsync(array.AsBuffer(), (uint)ms.Size, InputStreamOptions.None);
}
return array;
}
, 당신은 최선의 구현이있는 경우 ... ;-)