正如标题所暗示的那样,我很想知道大形状是否在 WPF 应用程序中占用更多内存,或者它是否全部基于算法而这并不重要?
干杯,可汗
附录,我问的原因是我想在我的页面顶部有一个视觉弯曲的标题。我已经使用位于页面顶部的一个非常大的椭圆来完成此操作,其中大部分都离开了页面,我只查看了其中的一小部分,但它提供了所需的视觉效果。(希望这是有道理的)
我只是想知道在屏幕上显示这个巨大的椭圆是否真的效率低下,而是考虑创建一个自定义路径。
就像符文安徒生所说,这取决于。
但是如果你经常重绘窗口的所有内容,比如平移和缩放,使用矢量可能会很慢,因为他每次都需要重新计算每个矢量。
编辑:
您应该始终将椭圆转换为路径。我们的团队做了很多性能测试,Ellipse 可能是最差的。在 Blend 中,右键单击 Ellipse,您可以选择:转换为路径。如果您只想发布椭圆,我会给您路径。
我认为 http://en.wikipedia.org/wiki/Vector_graphics
或多或少总结了使用基于矢量的表示与位图的优缺点。
表示为矢量的图形可以缩放,并且通常是最紧凑的表示。
如果您使用某些图像处理对图像进行矢量化,您最终会得到很多矢量,其中一些可能只代表一个像素 - 您可以获得非常大的矢量表示。
然而,形状的内存需求取决于其复杂性,而不是像素大小。
因此,如果您将复杂形状缩放为图标大小并且从不将其显示得更大,则最好使用位图格式。