以下内容介绍在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. 推荐web前端框架bootstrap

    bootstrap是基于Jquery而开发的一个前端框架. 全中文的学习网站:http://www.runoob.com/bootstrap/bootstrap-tutorial.html 实际上就是 ...

  2. 文件读取的时候要留意 -- 序列化serialize()与反序列化unserialize():

    原文:https://blog.csdn.net/little_rabbit_baby/article/details/53840543 序列化serialize()与反序列化unserialize( ...

  3. 关于CompletableFuture的一切,看这篇文章就够了

    文章目录 CompletableFuture作为Future使用 异步执行code 组合Futures thenApply() 和 thenCompose()的区别 并行执行任务 异常处理 java中 ...

  4. SQL之常用函数

    表8-2 中的SOUNDEX 需要做进一步的解释.SOUNDEX 是一个将任何文本串转换为描述其语音表示的字母数字模式的算法.SOUNDEX 考虑了类似的发音字符和音节,使得能对字符串进行发音比较而不 ...

  5. 【Linux题目】第七关

    1. 如果想修改开机内核参数,应该修改哪个文件? A. /dev/sda1 B. /etc/fstab 磁盘自动挂载的文件 C. /boot/grub/grub.conf D. /etc/rc.loc ...

  6. 【Linux题目】第六关

    [定时任务规则] 1. 如果在某用户的crontab文件中有以下记录,该行中的命令多久执行一次(RHCE考试题)?( ) 30 4 * * 3 mycmd A. 每小时. B. 每周. C. 每年三月 ...

  7. nginx日志、nginx日志切割、静态文件不记录日志和过期时间

    2019独角兽企业重金招聘Python工程师标准>>> 12.10 Nginx访问日志 日志格式 vim /usr/local/nginx/conf/nginx.conf //搜索l ...

  8. extend()和append()区别

    extend()和append()都可以用来添加. 例: a = [1,2,3,4,5,6] b = [7,8,9,10] c = {'aa':123,'bb':456,'cc':789} 1.    ...

  9. 《WCF技术内幕》翻译3:第1部分_第1章_蓝月亮:普遍需求和普遍概念

    第一部分:WCF介绍    章节目录:    第1章:蓝月亮    第2章:面向服务    第3章:消息交换模式.拓扑和编排    第4章:WCF 101 第1章:蓝月亮    商业和市场对软件系统新 ...

  10. Ngxin 开启CDN 日志获取不了真实IP的解决办法。

    nginx配置里面在http{ 后加入如下两行代码即可: set_real_ip_from 0.0.0.0/0;real_ip_header X-Forwarded-For; 重启nginx生效. 注 ...