C#コードでSVGをPNGに変換する方法


  1. Svg.Skia パッケージを使用する方法:
using SkiaSharp;
public void ConvertSvgToPng(string svgFilePath, string pngFilePath)
{
    // SVGファイルを読み込みます
    var svg = new SKSvg();
    svg.Load(svgFilePath);
    // PNGファイルに変換します
    using (var bitmap = new SKBitmap((int)svg.CanvasSize.Width, (int)svg.CanvasSize.Height))
    {
        using (var canvas = new SKCanvas(bitmap))
        {
            canvas.Clear(SKColors.Transparent);
            canvas.DrawPicture(svg.Picture);
        }
// PNGファイルとして保存します
        using (var image = SKImage.FromBitmap(bitmap))
        using (var data = image.Encode(SKEncodedImageFormat.Png, 100))
        using (var stream = System.IO.File.OpenWrite(pngFilePath))
        {
            data.SaveTo(stream);
        }
    }
}
  1. Magick.NET パッケージを使用する方法:
using ImageMagick;
public void ConvertSvgToPng(string svgFilePath, string pngFilePath)
{
    // SVGファイルを読み込みます
    using (var image = new MagickImage(svgFilePath))
    {
        // PNGファイルに変換します
        image.Format = MagickFormat.Png;
        image.Write(pngFilePath);
    }
}

これらのコード例は、SVGファイルをPNGファイルに変換するための基本的な手法を示しています。必要に応じて、ファイルパスやエラーハンドリングを適切に調整してください。