
Matlab,Visio等生成的图片的字体嵌入问题解决方法
确保将 对于32位系统,需要使用 Java代码的功能可以根据实际需求进行扩展和调整。
发布日期:2021-05-14 17:11:52
浏览次数:16
分类:精选文章
本文共 2307 字,大约阅读时间需要 7 分钟。
在Windows环境下,Matlab或Visio生成的EPS文件常出现字体未嵌入的问题。为了解决这一问题,下面将介绍两种解决方法。
方法一:使用GhostScript批量转换
安装GhostScript
首先安装GhostScript(推荐使用最新版本),然后将GhostScript的安装文件夹添加到系统路径中。准备工具
在GhostScript的bin
目录下找到gswin64c.exe
(或gswin32c.exe
,根据系统位数选择),将需要处理的EPS文件复制到该目录下。 运行批量转换命令
在命令提示符中执行以下命令(记得将xxxx.eps
替换为实际文件名): gswin64c.exe -dNOPAUSE -dBATCH -dEPSCrop -q -sDEVICE=pdfwrite -dCompatibilityLevel#1.3 -dPDFSETTINGS=/prepress -dSubsetFonts=true -dEmbedAllFonts=true -sOutputFile=temp.pdf xxxx.eps
这将生成一个临时PDF文件temp.pdf
。
将PDF转换为嵌入字体的EPS
再次运行命令将temp.pdf
转换为嵌入字体的EPS文件(记得替换yyyy.eps
): gswin64c.exe -q -dNOPAUSE -dBATCH -dNOCACHE -sDEVICE=epswrite -sOutputFile=yyyy.eps temp.pdf
转换完成后,新生成的yyyy.eps
文件即为嵌入字体的版本。
方法二:使用Java批量处理
如果需要处理大量文件,可以编写以下Java代码实现批量转换:
import java.io.File;import java.io.IOException;public class gsBatch { public static void main(String[] args) { if (args.length != 1) { System.out.println("Usage: java gsBatch"); System.exit(0); } String absoluteStartPath = System.getProperty("user.dir"); File file = new File(absoluteStartPath + "\\" + args[0]); gsBatch t = new gsBatch(); t.dotGenerator(file); } private void dotGenerator(File file) { File[] fileList = file.listFiles(); if (fileList == null) { return; } for (File f : fileList) { if (f.isFile() && f.getName().endsWith(".eps")) { try { // 请根据实际需要调整转换命令 String cmd = "gswin64c.exe -q -dNOPAUSE -dBATCH -dNOCACHE -sDEVICE=epswrite -sOutputFile=" + f.getName() + " temp.pdf"; System.out.println("Processing: " + f.getName()); System exec = new ProcessBuilder(cmd).start(); exec.waitFor(); if (exec.exitValue() != 0) { throw new IOException("Failed to process file: " + f.getName()); } } catch (IOException e) { System.out.println("Error processing file: " + f.getName()); e.printStackTrace(); } } } }}
注意事项
gswin64c.exe
或gswin32c.exe
添加到系统环境变量中。gswin32c.exe
。通过以上方法,用户可以轻松批量处理EPS文件,确保嵌入字体,生成高质量的学术论文。
发表评论
最新留言
路过按个爪印,很不错,赞一个!
[***.219.124.196]2025年04月08日 04时55分07秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
c++之程序流程控制
2019-03-06
spring-boot-2.0.3之redis缓存实现,不是你想的那样哦!
2019-03-06
httprunner学习23-加解密
2019-03-06
有道云笔记 同步到我的博客园
2019-03-06
李笑来必读书籍整理
2019-03-06
http头部 Expect
2019-03-06
Hadoop(十六)之使用Combiner优化MapReduce
2019-03-06
《机器学习Python实现_10_06_集成学习_boosting_gbdt分类实现》
2019-03-06
CoreCLR源码探索(八) JIT的工作原理(详解篇)
2019-03-06
IOS开发Swift笔记16-错误处理
2019-03-07
flume使用中的一些常见错误解决办法 (地址已经使用)
2019-03-07
andriod 开发错误记录
2019-03-07
C语言编译错误列表
2019-03-07
看明白这两种情况,才敢说自己懂跨链! | 喵懂区块链24期
2019-03-07
张一鸣:创业7年,我经历的5件事
2019-03-07
《web安全入门》(四)前端开发基础Javascript
2019-03-07
python中列表 元组 字典 集合的区别
2019-03-07