Browse Source

dont implement CreateScaleBitmap on Direct2d.

pull/3890/head
Dan Walmsley 6 years ago
parent
commit
a856b210fb
  1. 3
      src/Windows/Avalonia.Direct2D1/Direct2D1Platform.cs
  2. 10
      src/Windows/Avalonia.Direct2D1/Media/Imaging/WicBitmapImpl.cs

3
src/Windows/Avalonia.Direct2D1/Direct2D1Platform.cs

@ -208,7 +208,8 @@ namespace Avalonia.Direct2D1
/// <inheritdoc />
public IBitmapImpl ResizeBitmap(IBitmapImpl bitmapImpl, PixelSize destinationSize, BitmapInterpolationMode interpolationMode = BitmapInterpolationMode.HighQuality)
{
return (bitmapImpl as WicBitmapImpl).CreateScaledBitmap(destinationSize, interpolationMode);
// https://github.com/sharpdx/SharpDX/issues/959 blocks implementation.
throw new NotImplementedException();
}
/// <inheritdoc />

10
src/Windows/Avalonia.Direct2D1/Media/Imaging/WicBitmapImpl.cs

@ -177,16 +177,6 @@ namespace Avalonia.Direct2D1.Media
return new OptionalDispose<D2DBitmap>(D2DBitmap.FromWicBitmap(renderTarget, converter), true);
}
public unsafe WicBitmapImpl CreateScaledBitmap(PixelSize size, Avalonia.Visuals.Media.Imaging.BitmapInterpolationMode interpolationMode)
{
using (var scaler = new BitmapScaler(Direct2D1Platform.ImagingFactory))
{
scaler.Initialize(WicImpl, size.Width, size.Height, ConvertInterpolationMode(interpolationMode));
return new WicBitmapImpl(new Bitmap(Direct2D1Platform.ImagingFactory, scaler, BitmapCreateCacheOption.CacheOnDemand));
}
}
public override void Save(Stream stream)
{
using (var encoder = new PngBitmapEncoder(Direct2D1Platform.ImagingFactory, stream))

Loading…
Cancel
Save