为了账号安全,请及时绑定邮箱和手机立即绑定

如何将SVG转换为PDF C#?

如何将SVG转换为PDF C#?

C#
繁星点点滴滴 2021-07-21 21:12:27
我已经有这个问题几天了,并尝试了很多事情。本质上,我让用户编辑 SVG,一旦完成,他们将其保存回服务器上的文件路径。我的问题是我的 SVG 包含一个指向目录中文件的 href。作为 SVG,它可以毫无问题地引用文件,但是当我将文件转换为 PDF 时,它没有图像,但它有其他 SVG 元素,例如线条和文本。有没有人遇到过这个问题或知道如何解决?我正在使用 ImageMagick 进行转换,但它仍然存在该问题。请参阅下面的我的控制器代码:    [HttpPost]    public void ConvertToPDF(string[] svgs, string pdfFilePath, List<string> files)    {        MagickReadSettings settings = new MagickReadSettings();        using (MagickImageCollection images = new MagickImageCollection())        {            foreach(var s in svgs)            {                var fileName = System.Web.HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["ConvertFromXMLToSvgTempPath"] + s + ".svg");                //images.Read(fileName, settings);                //var readSettings = new MagickReadSettings() { Format = MagickFormat.Svg };                using (var image = new MagickImage(fileName))                {                    image.Format = MagickFormat.Pdf;                }            }            images.Write(pdfFilePath);        }    }
查看完整描述

2 回答

?
狐的传说

TA贡献1804条经验 获得超3个赞

仅供参考 - 我最终将图像路径转换为 Base64。SVG 的其余部分已正确转换。希望这对未来的任何人都有帮助。


查看完整回答
反对 回复 2021-07-31
  • 2 回答
  • 0 关注
  • 234 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信