WPF Image.Source和透明图形

时间:2013-08-28 15:22:44

标签: c# wpf image bitmapimage

我正在创建一个可以有一些图像的视觉效果。如果我使用普通(非透明)Png图像,它的工作正常(在性能和打印方面),但是当我更换单个透明png时,它变得非常慢并且在打印视觉时花费超过3倍的时间同样。 我使用以下代码。

  var source = new Uri(filePath, UriKind.RelativeOrAbsolute);

  BitmapImage imageBitMap =new BitmapImage(source);

        var pictureImage = new Image();

        pictureImage.Source = imageBitMap;
        grid.Children.Add(pictureImage);

我使用的是ANTS Performance Profiler,这里是统计数据,

使用4个图形(非透明),每个大约(50 -100KB)渲染它们的平均时间为每个图形10ms。 很快我用等效的透明图形替换其中一个,平均时间会上升,每个图形上升到34毫秒。

任何想法为什么透明图形需要很长时间,以及如何减少它。

我尝试使用Adobe Illustrator和InkSpace将透明Png转换为xaml,但没有成功。 Adobe Illustrator插件将png转换为1KB xaml文件,其中包含一个带有viewbox的空白画布。 InkSpace正在将整个图像转换为base64字符串并将其设置为Image标记的源,但它根本不显示在视觉中。

0 个答案:

没有答案
相关问题