У меня есть PNG с прозрачностью, которая теряет много качества при конвертации в ImageSource.Что я делаю, чтобы преобразовать это следующее:
public static ImageSource ToImageSource()
{ Bitmap bitmap = Properties.Resources.Image;
IntPtr hBitmap = bitmap.GetHbitmap();
ImageSource wpfBitmap = Imaging.CreateBitmapSourceFromHBitmap(
hBitmap,
IntPtr.Zero,
Int32Rect.Empty,
BitmapSizeOptions.FromEmptyOptions());
RenderOptions.SetBitmapScalingMode(wpfBitmap, BitmapScalingMode.HighQuality);
return wpfBitmap;
}
Но качество действительно плохое.когда я обращаюсь непосредственно к файлу на моем компьютере, качество корректное:
<DataGridTemplateColumn Width="14" IsReadOnly="True">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Image Source="C:\Users\MyUser\Desktop\Image.png" Width="14" Height="14"></Image>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
Есть ли другой способ преобразования ресурса без потери качества и прозрачности?