Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
简单SVG如何比PNG占用更多字节?_Svg - Fatal编程技术网

简单SVG如何比PNG占用更多字节?

简单SVG如何比PNG占用更多字节?,svg,Svg,我们有在Adobe Illustrator中创建的图标,这些图标需要通过网络连接发送,并以72x72px的速度呈现,我们可以控制它们的两端呈现方式。我们需要一个小文件大小。它们是相当简单的图标,但在SVG格式中,它们的大小从32KB到6KB不等,当我将它们渲染为72x72pXpng时,它们最终会变小,大约3KB 这怎么可能呢?我认为SVG应该更小,因为它们只是矢量表示。是否有一些优化我可以做,使SVG更小 编辑:下面是一个示例。这是一个Wikimedia SVG,不是我们的图标之一,因为我不能在

我们有在Adobe Illustrator中创建的图标,这些图标需要通过网络连接发送,并以72x72px的速度呈现,我们可以控制它们的两端呈现方式。我们需要一个小文件大小。它们是相当简单的图标,但在SVG格式中,它们的大小从32KB到6KB不等,当我将它们渲染为72x72pXpng时,它们最终会变小,大约3KB

这怎么可能呢?我认为SVG应该更小,因为它们只是矢量表示。是否有一些优化我可以做,使SVG更小

编辑:下面是一个示例。这是一个Wikimedia SVG,不是我们的图标之一,因为我不能在网上发布我们的实际图标。但它与我们拥有的一些图标类似,并且存在相同的问题:

PNG版本,2KB:


是30KB。压缩到5KB。

为了证明SVG可以很小,这里有一个手工制作的文件版本,仅922字节未压缩。它可以做得更小:)


为了证明SVG可以很小,这里有一个手工制作的文件版本,它只有922字节未压缩。它可以做得更小:)


为了证明SVG可以很小,这里有一个手工制作的文件版本,它只有922字节未压缩。它可以做得更小:)


为了证明SVG可以很小,这里有一个手工制作的文件版本,它只有922字节未压缩。它可以做得更小:)




AI导出的SVG文件中有大量不必要的元数据。用文本编辑器打开它,你会在顶部看到(通常)。您的直线中可能还有许多不必要的点,这些点可以用一条贝塞尔曲线来近似-请参见:在传输它们之前,您是否压缩了它们?如果您想让我们发表任何有用的评论,您需要在问题中至少提供一个SVG图标。压缩SVG比非压缩SVG小得多,但仍然比PNG大。我要找一个例子来发布…嗨,如果你用文本编辑器打开SVG,你会看到每个点需要大约400字节来编码,而在png中,每个点是4个像素,最坏情况下(没有任何压缩)需要4个字节(alpha,red,green,blue)*4=16字节。时钟svg示例包含了相当多的粗糙标记,快速运行svgo可以得到约2KB的gzip。自己试试看。AI导出的SVG文件中有大量不必要的元数据。用文本编辑器打开它,你会在顶部看到(通常)。您的直线中可能还有许多不必要的点,这些点可以用一条贝塞尔曲线来近似-请参见:在传输它们之前,您是否压缩了它们?如果您想让我们发表任何有用的评论,您需要在问题中至少提供一个SVG图标。压缩SVG比非压缩SVG小得多,但仍然比PNG大。我要找一个例子来发布…嗨,如果你用文本编辑器打开SVG,你会看到每个点需要大约400字节来编码,而在png中,每个点是4个像素,最坏情况下(没有任何压缩)需要4个字节(alpha,red,green,blue)*4=16字节。时钟svg示例包含了相当多的粗糙标记,快速运行svgo可以得到约2KB的gzip。自己试试看。AI导出的SVG文件中有大量不必要的元数据。用文本编辑器打开它,你会在顶部看到(通常)。您的直线中可能还有许多不必要的点,这些点可以用一条贝塞尔曲线来近似-请参见:在传输它们之前,您是否压缩了它们?如果您想让我们发表任何有用的评论,您需要在问题中至少提供一个SVG图标。压缩SVG比非压缩SVG小得多,但仍然比PNG大。我要找一个例子来发布…嗨,如果你用文本编辑器打开SVG,你会看到每个点需要大约400字节来编码,而在png中,每个点是4个像素,最坏情况下(没有任何压缩)需要4个字节(alpha,red,green,blue)*4=16字节。时钟svg示例包含了相当多的粗糙标记,快速运行svgo可以得到约2KB的gzip。自己试试看。AI导出的SVG文件中有大量不必要的元数据。用文本编辑器打开它,你会在顶部看到(通常)。您的直线中可能还有许多不必要的点,这些点可以用一条贝塞尔曲线来近似-请参见:在传输它们之前,您是否压缩了它们?如果您想让我们发表任何有用的评论,您需要在问题中至少提供一个SVG图标。压缩SVG比非压缩SVG小得多,但仍然比PNG大。我要找一个例子来发布…嗨,如果你用文本编辑器打开SVG,你会看到每个点需要大约400字节来编码,而在png中,每个点是4个像素,最坏情况下(没有任何压缩)需要4个字节(alpha,red,green,blue)*4=16字节。时钟svg示例包含了相当多的粗糙标记,快速运行svgo可以得到约2KB的gzip。我喜欢这个答案:)我喜欢这个答案:)我喜欢这个答案:)我喜欢这个答案:)我喜欢这个答案:)