2016-10-26 3 views
1

Я использую this package для преобразования изображения svg в png. Мой код работает на нем выглядит следующим образом:Не отображаются шрифты при преобразовании изображения SVG

SvgDocument svgDoc = SvgDocument.FromSvg<SvgDocument>(decoded); 

foreach (var item in svgDoc.Children) 
{ 
     SetFonts(item); 
} 

Bitmap image = svgDoc.Draw(); 

Существует известная issue с отображением шрифта, так что я пытаюсь использовать этот метод:

public void SetFonts(SvgElement parent) 
    { 
     if (parent.HasChildren()) 
     { 
      foreach (SvgElement child in parent.Children) 
      { 
       SetFonts(child); 
      } 
     } 

     try 
     { 
      SvgText svgText = (SvgText)parent; 
      svgText.FontFamily = "Arial"; 
      svgText.FontSize = 12; 
      svgText.Font = "Arial"; 
     } 
     catch 
     { 
     } 
    } 

Он находит только по День текстовая строка, но все же титры осей не видны, где может быть проблема?

Почтовый файл ssv here.

ответ

0

Вам нужно поместить CSS в раздел def. Что-то вроде:

<defs> 
    <style type="text/css"> 
    @font-face { 
     font-family: Delicious; 
     src: url('../fonts/font.woff'); 
    } 
    </style> 
</defs> 
Смежные вопросы