PDF中伪代码、原理示意图等导出为矢量图

news2024/10/6 4:08:33

需求:将 LaTeX 中生成的伪代码 PDF 转换成 svg 或 emf 格式的矢量图,然后插入 word 或 ppt 中。

1 伪代码PDF导出为矢量图

1.1 通过 Adobe Illustrator 处理将

  1. 先新建一个空白的PDF,然后文件-->置入导入PDF;
    在这里插入图片描述
    2.选中这个图片,然后对象-->拼合透明度,并在弹出的选择框中进行设置,将图片曲线化;

3.选中这个文件,文件-->导出-->导出为,根据需要导出选择 svg 或者 emf 格式。

不知道为啥,感觉 Adobe Illustrator 导出 svg 的效果比导出emf图片的效果好很多。 后续如果需要 emf 格式的,可将 svg 图片插入 PPT 中,然后通过 右键-->另存为,得到 emf 格式的图片。(使用 PPT 中图片另存为来更改图片格式,真的好用。)

1.2 通过 Inkscape 处理

注意: Win 11 上使 1.3.2 版本打开 PDF 程序会卡死,而 1.2.2 版本能正常打开 PDF 进行处理。在 Ubuntu 20.4 上使用 1.3.2 版本能正常打开 PDF 进行处理。

操作参考视频:论文技巧 用overleaf latex 生成论文的算法伪代码再用inscape插入到word文档

  1. 通过Inkscape打开PDF文件,选择从Poppler/Cairo导入;


2. 文件-->另存为,选择纯 svg 格式或 emf 格式即可;

1.3 通过在线工具处理

这里提供 2 种方法:一种是直接使用在线工具;另一种是先预处理一下PDF文件,然后再使用在线工具。

(1)直接使用在线的格式转换工具,将PDF转为SVG格式

推荐使用网站:

  • SVG Converter
  • All to All 在线格式转换
  • I2PDF
  • PDF to SVG

通过这些网站可将 PDF 格式的伪代码转换为 SVG 格式矢量图,且图片中的字体不会发生变换。测试的其他几个工具在转换时,图片中的字体会发生改变。

注意: 这里提供的网站仅适用于将 PDF 转换为 SVG 格式。

(2)先将图片曲线化,然后再利用在线转换格式工具

通过 Adobe Illustrator 或 Inkscape 处理得到矢量图片的过程,其实也是将字体曲线化以后,再导出为矢量图片的。

先将PDF曲线化,然后再使用在线工具进行格式转换,即可避免字体的改变。

下面提供 3 种 PDF 曲线化操作(这 3 种操作基本一致,大同小异):

  • 方法一:通过印前检查。操作见视频:使用Acrobat将PDF内的文字轮廓化 (转曲)

  • 方法二:通过添加背景,然后拼合器预览。操作见博客:Adobe Acrobat DC 将PDF转曲步骤

  • 方法三:通过添加水印,然后拼合器预览。操作见博客:pdf文件中的文字批量转曲的办法

注意:方法二和方法三,如果直接操作拼合器预览是没有效果的。

这里提供方法一的操作步骤:

  1. 工具中的印刷制作;
    在这里插入图片描述
  2. 印前检查;然后另存为PDF;检查结果输出(直接关掉就行);

PDF 转曲后,再使用在线格式转换工具,得到 svg 格式或 emf 格式文件。有的时候看起来 emf 图片效果不好,可以尝试将其导出 PPT 中,然后右键取消组合或右键编辑图片或右键转换为形状后(取决于图片是什么格式的,有那个选项就选哪个就好),可能图片的效果就好了,但也不一定,也可能这样处理后格式又变了。有的在线工具,就是效果不好,建议换其他的试一下。

尝试下来,感觉转 svg 的效果会更好一些。如果确实需要 emf 格式。可以将 svg 插入 PPT 中,然后选中图片右键将其导出为 emf 格式。

PDF转 svg 工具

  • https://tools.pdf24.org/zh/convert-from-pdf

PDF转 emf 工具

  • https://cloudconvert.com/
  • https://www.alltoall.net/pdf_emf/

1.4 导出矢量图效果

直接从LaTex中导出的伪代码PDF效果。


如果矢量化的方式不合适,会导致字体的变化。


与原PDF一致


字体发生了改变

2 对于 PDF 中矢量格式示意图提取

有时看到论文中好看的矢量图,想提取出来保存或修改使用。

2.1 通过 PPT 处理

通过将PDF另存或导出为PPT格式,即可在ppt获取到论文中的矢量图。需要选中图片以后,多次取消组合,才能进行编辑。

优点: 方便,且文档的整体和原文档相比,保留较好。
缺点: 存在图形部分分解不彻底,部分不能编辑的情况。

2.2 通过 Adobe Illustrator 或 Inkscape 处理

在软件中Adobe Illustrator中,打开PDF文件,通过多次的释放剪切蒙版和取消编组就能够进行编辑了。

优点: 对矢量图像保留的较好。
缺点: 除了图形以外的文字,由于字体缺失等原因和原来的文档有较大出入。

对于使用Inkscape导出矢量图片的过程可参见视频:分享一个从PDF提取矢量图的方法

3 一些额外说明

  • 将PDF导出为PPT,图片另存为emf格式,插入word,并将文档导出为PDF。此PPT图片中的文字仍然能被选中,说明其为文字。但其他方法得到的 SVG 图片,由于字体的缺失(文字已经曲线化了,不再试文字),最终的 PDF 文件选中这些文字。

  • 如果 PDF 的字体本机是存在的,则用 Adobe Illustrator 导出 SVG 文件时不用曲线化,可以得到文字仍然是文字的 SVG 图片。

  • 将 PDF 导出为 PPT 真的好用,文档的格式能得到很大程度的保留。

  • 将图片插入 PPT 然后再另存为其他格式的操作也真的好用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1640393.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于Springboot的交流互动系统

基于SpringbootVue的交流互动系统的设计与实现 开发语言:Java数据库:MySQL技术:SpringbootMybatis工具:IDEA、Maven、Navicat 系统展示 用户登录 首页 帖子信息 聚会信息 后台登录 后台管理首页 用户管理 帖子分类管理 帖子信息…

C语言例题29:在屏幕上显示一个等腰三角形

#include <stdio.h>void main() {int i, j;int x;printf("输入等腰三角形行数&#xff1a;");scanf("%d", &x);for (i 1; i < x; i) {for (j i; j < x; j) {printf(" "); //输出空格占位}for (j 1; j < 2 * i; j) {printf…

HTTP协议Request

文章目录 HTTP协议介绍概念版本分类特点 浏览器抓包观察请求报文协议步骤实现 Request和Response概述Request对象Request继承体系Request获取请求数据获取请求行数据获取请求头数据获取请求体数据获取请求参数(通用方式) 解决post请求乱码问题解决思路解决方案 Request请求转发…

【20-时间序列预测:使用Scikit-learn处理时间数据】

文章目录 前言理解时间序列数据处理时间数据数据格式与解析时间组件提取时间序列可视化构建时间序列预测模型数据集分割特征工程选择模型验证与评估评价指标选择结论前言 时间序列预测在金融、天气预报和销售分析等领域中扮演着重要角色。在本文中,我们将探讨如何使用Scikit-l…

Linux快速安装Nginx和重新添加模块

目录 一、Nginx快速安装1、下载Nginx2、配置Nginx模块 二、Ngnix重新编译和安装模块 一、Nginx快速安装 1、下载Nginx 直接进入Nginx官网下载Linux最新稳定版本&#xff0c;我之前下载的版本是1.23.0。 2、配置Nginx模块 下载完后我把源码压缩文件解压放在/opt/appl/nginx…

ICode国际青少年编程竞赛- Python-1级训练场-for循环入门

ICode国际青少年编程竞赛- Python-1级训练场-for循环入门 1、 for i in range(4):Dev.step(4)Dev.turnLeft()2、 for i in range(3):Dev.step(6)Dev.turnRight()3、 for i in range(3):Dev.turnRight()Dev.step(2)Dev.turnLeft()Dev.step(-3)4、 for i in range(4):Dev…

DNS、ICMP、NAT以及代理服务器

目录 1. DNS 1.1. DNS 背景 1.2. 域名简介 1.3. 域名解析过程 2. ICMP 2.1. ICMP 的功能 2.2. ICMP 的报文格式 2.3. ping 命令 2.4. traceroute 命令 3. NAT和代理服务器 3.1. NAT 技术 3.2. NAT IP转换过程 3.3. NAT 技术的缺陷 3.4. 代理服务器 3.4.1. 正向…

【redis】Redis数据类型(四)Set类型

目录 Set类型介绍使用场景 Set类型数据结构set的单个元素的添加过程IntSet哈希表内存结构 常用命令SADD示例 SREM示例 SMEMBERS示例 SISMEMBER示例 SCARD示例 SMOVE示例 SPOP示例 SRANDMEMBER示例 SINTER示例 SINTERSTORE示例 SUNION示例 SUNIONSTORE示例 SDIFF示例 SDIFFSTORE…

【每日算法】理论:大模型相关 刷题:队列的应用

上期文章 【每日算法】理论&#xff1a;多模态系列 刷题&#xff1a;栈的应用 文章目录 上期文章一、上期问题二、本期理论问题1、GPT1&#xff0c;2&#xff0c;3的区别2、解决过拟合的方法3、LLM的生成原理4、对比LSTM,GRU,transformer5、zero-shot6、pre-norm和post-norm的…

vscode远程免密ssh原理与实操方法

什么是SSH SSH是一种加密协议&#xff0c;全称为Secure Shell&#xff0c;用于安全地远程登录到服务器或其他远程设备上执行命令或传输文件。它提供了一种安全的加密通信机制&#xff0c;使得远程登录和文件传输等操作不会被恶意攻击者窃取或篡改&#xff0c;确保了数据的保密…

扩展学习|本体研究进展

文献来源&#xff1a; 王向前,张宝隆,李慧宗.本体研究综述[J].情报杂志,2016,35(06):163-170. 一、本体的定义 本体概念被引入人工智能、知识工程等领域后被赋予了新的含义。然而不同的专家学者对本体的理解不同,所给出的定义也有所差异。 人工智能领域的学者Neches(1991)等人对…

eSIM Network搭建指南

有任何关于GSMA\IOT\eSIM\RSP\业务应用场景相关的问题&#xff0c;欢迎W: xiangcunge59 一起讨论, 共同进步 (加的时候请注明: 来自CSDN-iot).

doxygen 辅助阅读代码的神器

简介 Doxygen是一个文档生成工具&#xff0c;主要用于编写编程语言的软件文档。它最初是为C设计的&#xff0c;但后来增加了对C、C#、Java、Objective-C、Python、IDL&#xff08;在某些情况下还有PHP、C#和D&#xff09;的支持。Doxygen可以从一组带有文档注释的源代码文件中…

【数据结构】如何创建一棵红黑树(附动图讲解)

一、前言 二、红黑树的概念 三、红黑树的性质 四、红黑树节点的定义 五、红黑树的插入 5.1 节点的初始颜色 5.2 红黑树的调整 六、红黑树的验证 6.1 验证有序 6.2 验证红黑树性质 七、红黑树与AVL树的比较 一、前言 在前面AVL树的学习中&#xff0c;我们知道了如何…

golang 基础知识细节回顾

之前学习golang的速度过于快&#xff0c;部分内容有点囫囵吞枣的感觉&#xff0c;写gorm过程中有很多违反我常识的地方&#xff0c;我通过复习去修正了我之前认知错误和遗漏的地方。 itoa itoa自增的作用在编辑error code时候作用很大&#xff0c;之前编辑springboot的error c…

【Linux学习】(2)OS的简单了解|Linux的基本指令操作

前言 本文将先简单了解什么是操作系统&#xff0c;再讲解一些Linux的基本指令。 一、操作系统的简单了解 1、什么是操作系统&#xff08;Operating System&#xff0c;简称OS&#xff09;&#xff1f; OS是一款做软硬件管理的软件。软硬件的体系结构图&#xff1a; 硬件&…

探索高级聚类技术:使用LLM进行客户细分

在数据科学领域&#xff0c;客户细分是理解和分析客户群体的重要步骤。最近&#xff0c;我发现了一个名为“Clustering with LLM”的GitHub仓库&#xff0c;它由Damian Gil Gonzalez创建&#xff0c;专门针对这一领域提供了一些先进的聚类技术。在这篇文章中&#xff0c;我将概…

「 网络安全常用术语解读 」SBOM主流格式SWID详解

国际标准化组织&#xff08;ISO&#xff09;和国际电工委员会&#xff08;International Electrotechnical Commission&#xff0c;IEC&#xff09;发布了ISO/IEC 19770-2软件标识&#xff08;Software Identification&#xff0c;SWID&#xff09;标签标准&#xff0c;该标准定…

Qt模型视图代理之MVD(模型-视图-代理)概念的简单介绍

往期回顾 Qt绘图与图形视图之Graphics View坐标系的简单介绍-CSDN博客 Qt绘图与图形视图之基本图元绘制的简单介绍-CSDN博客 Qt绘图与图形视图之自定义图元实现拖拽、拉伸、旋转功能-CSDN博客 Qt模型视图代理之MVD(模型-视图-代理)概念的简单介绍 一、基本概念 Qt模型视图代理…

前端页面平滑过渡解决方案

一、问题产生 在使用图片作为页面背景时&#xff0c;无法使用transtion进行平滑过渡&#xff0c;直接切换背景又会降低使用体验。 二、解决方式 使用clip-path对背景图片裁剪配合transtion实现平滑过渡的效果 三、效果展示 网址&#xff1a;ljynet.com 四、实现方式 tem…