以下内容介绍在C# 程序中如何将SVG图片添加到PDF文档、以及如何将SVG图片转换为PDF文档。

一、环境准备

下载PDF类库工具,Spire.PDF for .NET hotfix 6.5.6及以上版本(下载时,注意版本信息)。下载后,解压文件,将Bin文件夹下的Spire.Pdf.dll文件在VS中的“解决方案资源管理器”进行“添加引用”。另外,也可以通过Nuget下载。

dll引用效果如下:

用于测试的SVG图片,如下图:

二、代码示例

1. 添加SVGPDF文档

C#

using System.Drawing;
using Spire.Pdf;
using Spire.Pdf.Graphics; namespace InsertSVGImage_PDF
{
class Program
{
static void Main(string[] args)
{
//加载SVG图片
PdfDocument file1 = new PdfDocument();
file1.LoadFromSvg("Image.svg"); //创建一个PDF文档,添加一页
PdfDocument pdf = new PdfDocument();
pdf.AppendPage(); //根据SVG图片创建模板,并将模板绘制到PDF
PdfTemplate template = file1.Pages[].CreateTemplate();
template.Draw(pdf.Pages[].Canvas, new PointF()); //保存PDF文档
pdf.SaveToFile("AddSVGtoPDF.pdf", FileFormat.PDF);
System.Diagnostics.Process.Start("AddSVGtoPDF.pdf");
}
}
}

VB.NET

Imports System.Drawing
Imports Spire.Pdf
Imports Spire.Pdf.Graphics Namespace InsertSVGImage_PDF Class Program Private Shared Sub Main(ByVal args() As String)
'加载SVG图片
Dim file1 As PdfDocument = New PdfDocument
file1.LoadFromSvg("Image.svg")
'创建一个PDF文档,添加一页
Dim pdf As PdfDocument = New PdfDocument
pdf.AppendPage
'根据SVG图片创建模板,并将模板绘制到PDF
Dim template As PdfTemplate = file1.Pages().CreateTemplate
template.Draw(pdf.Pages().Canvas, New PointF)
'保存PDF文档
pdf.SaveToFile("AddSVGtoPDF.pdf", FileFormat.PDF)
System.Diagnostics.Process.Start("AddSVGtoPDF.pdf")
End Sub
End Class
End Namespace

SVG图片添加效果:

2. SVG图片转换成PDF文档

C#

using Spire.Pdf;

namespace SVGtoPDF
{
class Program
{
static void Main(string[] args)
{
//加载SVG图片
PdfDocument doc = new PdfDocument();
doc.LoadFromSvg("Image.svg"); //调用方法SaveToFile()保存为PDF格式
doc.SaveToFile("ConvertSVGtoPDF.pdf", FileFormat.PDF);
System.Diagnostics.Process.Start("ConvertSVGtoPDF.pdf");
}
}
}

VB.NET

Imports Spire.Pdf

Namespace SVGtoPDF

    Class Program

        Private Shared Sub Main(ByVal args() As String)
'加载SVG图片
Dim doc As PdfDocument = New PdfDocument
doc.LoadFromSvg("Image.svg")
'调用方法SaveToFile()保存为PDF格式
doc.SaveToFile("ConvertSVGtoPDF.pdf", FileFormat.PDF)
System.Diagnostics.Process.Start("ConvertSVGtoPDF.pdf")
End Sub
End Class
End Namespace

SVG转PDF效果:

<完>

C#/VB.NET 将SVG图片添加到PDF、转换为PDF的更多相关文章

  1. C#/VB.NET对EXCEL图片添加超链接

    在日常工作中,在编辑文档时,为了方便自己或者Boss能够实时查看到需要的网页或者文档是,需要对在Excel中输入的相关文字进行超链接,那么对于一些在Excel中插入的图片我们该怎么实现超链接呢,下面给 ...

  2. Adobe Edge Animate –解决图形边缘精确检测问题-通过jquery加载svg图片

    Adobe Edge Animate –解决图形边缘精确检测问题-通过jquery加载svg图片 版权声明: 本文版权属于 北京联友天下科技发展有限公司. 转载的时候请注明版权和原文地址. 在edge ...

  3. php图片添加文字水印方法汇总

    方法一: <?php header("content-type:text/html;charset=utf-8"); //指定图片路径 $src = "img/a. ...

  4. 公司--下载svg图片

    加载本地svg图片: SVGParserRenderer norDrawable = OtherPageConfigsManager.getInstance().getSVGParserRendere ...

  5. UWP应用载入SVG图片的兼容性方案

    原文 UWP应用载入SVG图片的兼容性方案 新版本<纸书科学计算器>的更新点之一,就是优化了表达式的显示方式.在旧版本中,表达式里的符号是用png图片显示的,当用户放大看的时候会发现一些锯 ...

  6. 动态svg图片简单制作

    一.简介 #topics #no-box-shadow-img { box-shadow: none } 博主头像 svg图片格式不同于其它图片格式,svg图片本质上是一个xml文件,它内部是标记语言 ...

  7. Python3.7将普通图片(png)转换为SVG图片格式并且让你的网站Logo(图标)从此”动”起来

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_148 在之前的几篇文章中,介绍了业界中比较火爆的图片技术SVG(Scalable Vector Graphics),比如Iconf ...

  8. HTML中图片添加

    图片添加后保存的是添加路径 例: <div class="form-group"> <label class="col-sm-3 control-lab ...

  9. ios图片添加文字或者水印

    在项目中,我们会对图片做一些处理,但是我们要记住,一般在客户端做图片处理的数量不宜太多,因为受设备性能的限制,如果批量的处理图片,将会带来交互体验性上的一些问题.首先让我们来看看在图片上添加文字的方法 ...

随机推荐

  1. C语言字符数组超细讲解

    看到标题,有不少朋友会想:字符数组不也是数组吗?为什么要单独拿出来讲哩?莫非它是朵奇葩? 哈哈,确实,一起来认识一下这朵数组界的奇葩吧! 一.字符数组的定义.引用.初始化 大家好!我是字符数组,看我的 ...

  2. 关于XSS弹窗的小姿势

    最近快比赛了想刷刷题,做合天XSS进阶的时候遇到了过滤了alert然后还要弹窗效果的题目,这让我这个JS只学了一点点的菜鸡倍感无力.     在百度了其他资料后,发现confirm('xss')和pr ...

  3. Ubuntu syslog 太多的 named[1195]: error (network unreachable) resolving './DNSKEY/IN': 2001:7fd::1#53

    Edit file /etc/default/bind9: # run resolvconf? RESOLVCONF=yes # startup options for the server OPTI ...

  4. 二进制安装MySQL及破解密码

    二进制安装MySQL及破解密码 1.确保系统中有依赖的libaio 软件,如果没有: yum -y install libaio 2.解压二进制MySQL软件包 tar xf mysql-5.7.24 ...

  5. JavaScript HTMlL DOM对象(下)

    DOM:document operation model 文档操作模型 每个标签都是一个对象. 一.查找元素 DOM 回顾 直接查找 var obj = document.getElementById ...

  6. Chrome最新版如何安装Proxy SwitchyOmega

    由于Chrome的代理设置与windows10的1703及以后的版本不兼容,导致无法使用代理功能,给工作带来了很大的不便.最近发现一款不错的Chrome代理插件Proxy SwitchyOmega,由 ...

  7. 数学--数论--HDU 6063 RXD and math (跟莫比乌斯没有半毛钱关系的打表)

    RXD is a good mathematician. One day he wants to calculate: output the answer module 109+7. p1,p2,p3 ...

  8. MySQL 索引、视图

    1.索引 什么是索引 一个索引是存储在表中的数据结构,索引在表的列名上创建.索引中包含了一个列的值,这些值保存在一个数据结构中 索引优缺点 索引大大提高了查询速度 会降低更新表的速度,如对表进行INS ...

  9. linux 服务器/客户端 tcp通信的简单例子

    昨天弄了sublime之后没有弄输入中文的了,学生党来着,刚好可以练练英语(英语渣渣,还要考六级),所以注释都写英文的(语法什么的就别太深究了) 服务器端: /*start from the very ...

  10. 跟哥一起学python(2)- 运行第一个python程序&环境搭建

    本节的任务,是完成我们的第一个python程序,并搭建好学习python的环境.  建议通过视频来学习本节内容: 查看本节视频 再次看看上一节提到的那张图,看看作为高级编程语言,我们如何编程. 首先, ...