Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.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_Imagemagick_Png_Transparent_Imagemagick Convert - Fatal编程技术网

将svg图像转换为具有透明背景的png

将svg图像转换为具有透明背景的png,svg,imagemagick,png,transparent,imagemagick-convert,Svg,Imagemagick,Png,Transparent,Imagemagick Convert,如何将svg图像转换为具有透明背景的png。我有将近4000个svg图像要隐藏。我试着使用很多转换器,但它们不能提供透明的背景。我看到了imagemagick。但是我如何使用它来同时转换所有的图像呢。我现在能做什么 如果您使用的是Windows,则可以使用IrfanView() 转到文件->批量转换/重命名 选择批量转换 选择输出格式(PNG)并单击“选项”按钮设置透明度要求。您可以选择将主窗口颜色用作透明颜色,否则将提示您在预览图像时为每个图像选择透明颜色 不要忘记设置输出文件夹并选择要转换

如何将svg图像转换为具有透明背景的png。我有将近4000个svg图像要隐藏。我试着使用很多转换器,但它们不能提供透明的背景。我看到了imagemagick。但是我如何使用它来同时转换所有的图像呢。我现在能做什么

如果您使用的是Windows,则可以使用IrfanView()

  • 转到文件->批量转换/重命名
  • 选择批量转换
  • 选择输出格式(PNG)并单击“选项”按钮设置透明度要求。您可以选择将主窗口颜色用作透明颜色,否则将提示您在预览图像时为每个图像选择透明颜色
  • 不要忘记设置输出文件夹并选择要转换的文件
  • 按“开始批量”

    • 像这样使用
      ImageMagick

      mogrify -background none -format png *.svg
      
      那就是说。。。“获取所有
      SVG
      文件,并将其呈现为背景透明的
      PNG
      文件。”

      ImageMagick可从以下网址获得:。它安装在大多数Linux发行版上,并可用于OSX(理想情况下通过
      自制
      )和Windows

      如果您的SVG文件是使用(比如)一个白色矩形作为背景而不是用SVG术语正确定义背景来定义的,那么这可能不起作用。如果有不起作用的文件,请发布它们,以便检查


      如果您在Linux上,您可以使用
      GNU Parallel
      来加速数千个文件的速度,但您没有说。

      请参阅ImageMagick的“mogrify”命令,该命令可对多个图像进行操作。但是你需要重新表述这个问题,以便它清楚地与编程有关。你可能会提到你是在操作系统X、Linux还是Windows上-这有很大的不同。找不到与Windows类似的内容,安装的软件包中没有“mogrify”可执行文件,由于我对软件包本身并不熟悉,所以我花了一些时间在谷歌上找到了答案。(我需要一次转换图像。)因此正确的完整命令行应该是:>magickmogrify-backgroundnone-formatpng*。svg@PeterBulyaki是的,去年ImageMagick v7更改了命令名。如果您想继续使用“旧”名称,则在安装时必须勾选“安装旧名称”选项。对不起,我没有时间更新我所有的旧答案。