我正在开发一款可以通过MediaPlayer API从音乐文件中动态阅读专辑艺术的Windows Phone应用。我希望获得专辑艺术并调整视图的背景。由于调整大小会丢失细节并使图像变得难看,所以我想模糊它或某种效果。有没有我可以模糊图像的API? (来自C#还是XAML)?非常感谢!
答案 0 :(得分:10)
我首先要使用WriteableBitmap,要从BitmapImage获取WriteableBitmap,您可以执行以下操作:
WriteableBitmap wb = new WriteableBitmap(bitmapImage);
然后我建议使用WriteableBitmapExtension library。它支持调整图像大小:
wb.Resize(newWidth, newHeight, WriteableBitmapExtensions.Interpolation.Bilinear);
要使用WritableBitmapExtensions执行gaussian blur,请执行以下操作(由于某种原因,concolution不会编辑writableBitmap,因此您必须再次将其分配给相同的writableBitmap以查看结果):
wb = wb.Convolute(WriteableBitmapExtensions.KernelGaussianBlur5x5);
或
wb = wb.Convolute(WriteableBitmapExtensions.KernelGaussianBlur3x3);
(相邻像素的权重不同)。