Магия. NET in Azure, конвертирующая SVG в PNG, дает черные ящики - PullRequest
0 голосов
/ 01 апреля 2020

Используя Magick.NET-Q16-AnyCPU Я конвертирую SVG в PNG с этим минимальным кодом:

var bytes = File.ReadAllBytes("test.svg");
var magickReadSettings = new MagickReadSettings { Format = MagickFormat.Svg };
using var image = new MagickImage(bytes, magickReadSettings) { Format = MagickFormat.Png };
image.Write("test.png");

Локально, что работает нормально, и PNG выглядит корректно с текстом (ожидается):

PNG local

Но при развертывании в службе приложений Azure PNG получает черные ящики (фактические):

enter image description here

Файл SVG выглядит следующим образом (минимально):

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"[]>
<svg width="100px" height="50px" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xml="http://www.w3.org/XML/1998/namespace" version="1.1">
    <g transform="translate(10, 10)">
    <text transform="translate(50, 0)">foo</text>
  </g>
</svg>

Как это может быть?

1 Ответ

1 голос
/ 01 апреля 2020

Эта проблема связана со шрифтами, установленными в службе приложений. * * * * * * * * * * * * *. * * * * * * * * * * * * * * - внизу обсуждения .

...