SvgBuild.MsBuild 1.0.0

dotnet add package SvgBuild.MsBuild --version 1.0.0
                    
NuGet\Install-Package SvgBuild.MsBuild -Version 1.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="SvgBuild.MsBuild" Version="1.0.0">
  <PrivateAssets>all</PrivateAssets>
  <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="SvgBuild.MsBuild" Version="1.0.0" />
                    
Directory.Packages.props
<PackageReference Include="SvgBuild.MsBuild">
  <PrivateAssets>all</PrivateAssets>
  <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add SvgBuild.MsBuild --version 1.0.0
                    
#r "nuget: SvgBuild.MsBuild, 1.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#addin nuget:?package=SvgBuild.MsBuild&version=1.0.0
                    
Install SvgBuild.MsBuild as a Cake Addin
#tool nuget:?package=SvgBuild.MsBuild&version=1.0.0
                    
Install SvgBuild.MsBuild as a Cake Tool

SvgBuild NuGet Appveyor Build Travis Build

This is a .NET based tool set to save SVG to raster images. Includes a terminal-based program and a MSBuild task. It is compatible with .NET Framework 4.6.1 and Mono.

Build

This program uses MSBuild (included in Visual Studio distribution on Windows or Mono on other operation systems). To build the program, run the following script:

$ nuget restore
$ msbuild /p:Configuration=Release SvgBuild.sln

It will create the SvgBuild.Console/bin/Release/SvgBuild.Console.exe binary file.

Usage

SvgBuild basically takes two required parameters: input and output path. Input path should lead to a valid SVG file, output path should lead to a valid place to save the resulting image. Output image format will be determined by the output file extension. The supported file extensions are:

  • .bmp
  • .gif
  • .ico
  • .jpeg, .jpg
  • .png
  • .tiff

The image will be rescaled to the new size, if specified. Otherwise, the size of the original document will be preserved.

From Terminal

On Windows:

$ SvgBuild.Console <path to the input file> <path to the output file> [<width>x<height>]

On other operating systems:

$ mono SvgBuild.Console.exe <path to the input file> <path to the output file> [<width>x<height>]

From MSBuild

Install SvgBuild.MsBuild package into your project. Your NuGet client should automatically generate the following in your project file:

<Import Project="..\packages\SvgBuild.MsBuild.1.0.0\build\SvgBuild.MsBuild.props"
        Condition="Exists('..\packages\SvgBuild.MsBuild.1.0.0\build\SvgBuild.MsBuild.props')" />

After that, you're able to run SVG processing tasks e.g. in the AfterBuild target:

<Target Name="SvgBuildTasks" AfterTargets="AfterBuild">
  <SvgBuildTask InputPath="$(ProjectDir)..\SvgBuild.Tests\Resources\Image.svg"
                OutputPath="$(OutDir)Test.bmp"
                Width="30"
                Height="60" /> 
</Target>

Test

On Windows:

$ packages\xunit.runner.console.2.3.1\tools\net452\xunit.console.exe SvgBuild.Tests\bin\Release\SvgBuild.Tests.dll

On other operating systems:

$ mono packages/xunit.runner.console.2.3.1/tools/net452/xunit.console.exe SvgBuild.Tests/bin/Release/SvgBuild.Tests.dll

Pack

To pack the project before uploading it to NuGet, use the following commands:

$ nuget restore
$ msbuild /p:Configuration=Release SvgBuild.sln
$ nuget pack SvgBuild.MsBuild/SvgBuild.MsBuild.csproj -Tool -Prop Platform=AnyCPU -Prop Configuration=Release
There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.0 6,868 12/31/2017
0.0.1 1,290 11/26/2017

Initial release.