[论文工具] LaTeX常见错误及解决方法汇总笔记(eps2pdf失败 | 特殊符号 | 参考文献未显示或越界)

news2024/11/16 23:47:45

祝大家中秋国庆双节快乐!
回过头来,我们在编程过程中,经常会遇到各种各样的问题。然而,很多问题都无法解决,网上夹杂着各种冗余的回答,甚至需要看自己多年前的博客来解决。为更好地从事科学研究和编程学习,后续将撰写各类常见错误及解决方法的汇总笔记,希望对您有所帮助。

本文主要介绍LaTeX常见错误,包括Package pdftex.def Error: File `figures//4-eps-converted-to.pdf’ not found: using draft setting、参考文献未显示及越界问题、特殊符号引用总结等,并且将长期更新和完善。本文采用的工具为TeXLive 2022,操作系统为Windows 11。

在这里插入图片描述

文章目录

  • 一.TexLive2022安装
  • 二.Package pdftex.def Error: File `figures//4-eps-converted-to.pdf' not found: using draft setting.
  • 三.Texlive参考文献Bib未显示
  • 四.特殊符号引用总结
  • 五.参考文献超链接太长越界
  • 六.表格越界垂直居中和竖直显示问题
  • 总结


一.TexLive2022安装

TeXLive安装过程比较简单,可以从清华大学开源软件镜像站下载资源,如下图所示:

  • https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/Images/

在这里插入图片描述

第一步,解压IOS文件并以管理员权限运行“install-tl-windows.bat”文件。

在这里插入图片描述

第二步,傻瓜式安装TeX Live,包括安装路径等。

在这里插入图片描述

在这里插入图片描述

第三步,点击“Advanced”中的“Customize”,选择要安装的内容,保留常见的语言。

在这里插入图片描述

接着是傻瓜式安装。

在这里插入图片描述

在这里插入图片描述

第四步,右键“我的电脑”->“属性”,点击“高级系统设置”,添加TeXLive的系统环境变量。

  • D:\texlive\2022\bin\win32

在这里插入图片描述

然后在运行(Win+R键)中输入CMD,输入“latex -v”查看版本信息,即安装成功。

在这里插入图片描述

第五步,尽管TeXLive自带Texworks editor,但很多读者习惯使用其它编辑器,如VS Code、TeXstudio等,因此介绍如何安装TeXstudio。下载后傻瓜式安装即可。

在这里插入图片描述

在这里插入图片描述

第六步,运行TeXstudio并在“选项”中设置TeXstudio,首先显示所有行号。

在这里插入图片描述

在这里插入图片描述

其次,在“构建”中设置编译器为“PdfLaTeX”。如果是中文,可以设置为“XeLaTeX”。

在这里插入图片描述

运行结果如下图所示:

在这里插入图片描述


二.Package pdftex.def Error: File `figures//4-eps-converted-to.pdf’ not found: using draft setting.

背景知识:
在使用Texlive对要提交的论文排版,通常要求图片为eps格式,并且LaTeX通常能自动转换为PDF文件(xx-eps-converted-to.pdf)。然而,eps图片在转换为PDF文件时会报错,如何解决该问题呢?

在这里插入图片描述
·
引用代码:

\begin{figure}[!ht]
	\centering
	\includegraphics[width=0.3\textwidth]{4.eps}
	\caption{OFDM system}
	\label{fig8}
\end{figure}

错误提示:

  • ! Package pdftex.def Error: File `figures//4-eps-converted-to.pdf’ not found: using draft setting. See the pdftex.def package documentation for explanation. Type H for immediate help.
  • !!! Error: Cannot open figures//4.eps: No such file or directory
  • D:\texlive\texlive\2022\bin\win32\runscript.tlu:915: command failed with exit code 2: perl.exe d:\texlive\texlive\2022\texmf-dist\scripts\epstopdf\epstopdf.pl --restricted “–outfile=figures//4-eps converted-to.pdf” “figures//4.eps”
  • [5.5]GPL Ghostscript 9.55.0: **** Could not open temporary file ‘’ **** Unable to open the initial device, quitting. epstopdf ($Id: epstopdf.pl 48681 2018-09-16 23:03:58Z karl $) 2.28 !!! Error: Writing to gswin32c failed, error code 1

在这里插入图片描述

解决方法:

第一步,检查图片命名规则。

  • 注意:插入的图片命名不能留有空格,尽量是完整的英文字符串,分隔可以增加‘-’之类的符号。
  • 如果命名不存在空格,继续检查。

第二步,增加宏包,注意顺序。

\usepackage{graphicx}
\usepackage{epstopdf}
\graphicspath{{figures/}}

第三步,用命令行编译。

pdflatex --shell-escape 具体文件名.tex

在需要编译tex文件夹下输入cmd,即可打开命令行。

在这里插入图片描述

然而仍然报错,提示“epstopdf 不是可执行文件”,怀疑是环境安装问题(最后一个错误)。

在这里插入图片描述

第四步,epstopdf需要安装ghostscript才能转换,重新下载Ghostscript和gswin32c.exe并进行安装,然而仍然失败。下载地址如下:

  • https://www.ghostscript.com/releases/gsdnld.html
  • https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10020/gs10020w32.exe

在这里插入图片描述

安装后的文件如下所示:

  • C:\Program Files (x86)\gs\gs10.02.0

在这里插入图片描述

在这里插入图片描述

可以看到TexLive以及添加了相关程序路径。

在这里插入图片描述

第五步,欲哭无泪 o(╥﹏╥)o,卸载软件重新安装还是报错。

在这里插入图片描述

在这里插入图片描述

第六步,本地转换PDF文件仍然报错,确认是下列问题导致。

  • epstopdf --debug photo.eps photo.pdf

GPL Ghostscript 9.55.0: **** Could not open temporary file ‘’ **** Unable to open the initial device, quitting. epstopdf ($Id: epstopdf.pl 48681 2018-09-16 23:03:58Z karl $) 2.28 !!! Error: Writing to gswin32c failed, error code 1
网上有反馈该报错由于中文路径或用户名为中文导致,然后作者电脑均为英文路径。

在这里插入图片描述

在这里插入图片描述

第七步,最后只能在线手动将EPS图片转为PDF文件,等以后再解决该问题,难受。

  • https://convertio.co/zh/eps-pdf/
  • https://cloudconvert.com/eps-to-pdf(效果颇佳)

在这里插入图片描述

下面补充另一个常见错误及其解决方法。

epstopdf ($Id: epstopdf.pl 66407 2023-03-06 23:44:49Z karl $) 2.31
!!! Error: Input filename ‘fig/Fig1.eps’ not allowed in restricted mode.
Package pdftex.def Error: File `fig/XXX-eps-converted-to.pdf’ not found: using draft setting. …

该错误属于restricted相关的系统Bug,需要修改texmf-dist\scripts\epstopdf\epstopdf.pl文件代码,如下图所示,将“$restricted = 1 if $::opt_restricted;”修改为“$restricted = 0 if $::opt_restricted;”。

在这里插入图片描述
在这里插入图片描述

如果该文件没有写入权限,则修改下权限即可。

在这里插入图片描述

在这里插入图片描述

参考资料:

  • https://tex.stackexchange.com/questions/199225/package-pdftex-def-error/536664
  • https://stackoverflow.com/questions/46272914/textext-inkscape-ghostscript-and-matex-mathematica-compatibility
  • https://blog.csdn.net/xyx2999/article/details/129715573

三.Texlive参考文献Bib未显示

在Texlive中,通常有两种格式的引用参考文献。

(1)第一种方式直接在main.tex文件中撰写,以thebibliography的形式。

\begin{thebibliography}{49}

\bibitem{b1} Microsoft, ``What is PowerShell? - PowerShell | Microsoft Docs,'' 
    Website: https://docs.microsoft.com/en-us/powershell/scripting/overview, 2022.

\bibitem{b2} D. Hendler, S. Kels, et al., ``AMSI-Based Detection of Malicious PowerShell 
    Code Using Contextual Embeddings,'' in 15th ACM Asia Conference on Computer and 
    Communications Security (AsiaCCS). ACM, 2020, pp. 679-693.

\bibitem{b49} M. Ring, D. Schlor, et al., ``Malware detection on windows audit logs using 
  LSTMs,'' Computers \& Security, vol.109, 2021, p. 102389. 

\end{thebibliography}

(2)第二种方式将参考文献写在myref.bib,以 \bibliography{myref} 的形式添加。

@misc{b1,
  title = {What is PowerShell? - PowerShell | Microsoft Docs},
  url = {https://docs.microsoft.com/en-us/powershell/scripting/overview},
  author = {Microsoft},
  year = {2022}
}

@inproceedings{b2,
  title={Amsi-based detection of malicious powershell code using contextual embeddings},
  author={Hendler, Danny and Kels, Shay and Rubin, Amir},
  booktitle={Proceedings of the 15th ACM Asia Conference on Computer and Communications Security (AsiaCCS)},
  pages={679--693},
  year={2020},
  organization = {ACM}
}

@article{b49,
  title={Malware detection on windows audit logs using LSTMs},
  author={Ring, Markus and Schl{\"o}r, Daniel and Wunderlich, Sarah and Landes, Dieter and Hotho, Andreas},
  journal={Computers \& Security},
  volume={109},
  pages={102389},
  year={2021},
  publisher={Elsevier}
}

参考文献BIB格式可以通过谷歌学术下载。同样,ChatGPT能够修改对应的格式,如百度的文心一言。参考文献格式推荐:

  • https://www.jianshu.com/p/f335e75487cb

在这里插入图片描述

在这里插入图片描述

然后在生成参考文献时,总会遇到文献未显示的现象,如下图所示。

在这里插入图片描述

解决方法通常包括三个步骤:

  • 第一步,采用pdfLaTex编译“main.tex”,将会生成main.aux文件;

在这里插入图片描述

  • 第二步,采用BibTex编译“main.aux”文件,并生成main.bbl文件;

在这里插入图片描述

  • 第三步,采用pdfLaTex编译“main.tex” 2 次即可,第一次生成文献无标号,第二次则正常显示。

在这里插入图片描述

在这里插入图片描述

参考资料:

  • https://blog.csdn.net/b_b1949/article/details/127333067

四.特殊符号引用总结

1.半圆
导入引用包和代码:

\usepackage{tikz}
\newcommand*\emptycirc[1][1ex]{\tikz\draw (0,0) circle (#1);} 
\newcommand*\halfcirc[1][1ex]{%
	\begin{tikzpicture}
	\draw[fill] (0,0)-- (90:#1) arc (90:270:#1) -- cycle ;
	\draw (0,0) circle (#1);
	\end{tikzpicture}}
\newcommand*\fullcirc[1][1ex]{\tikz\fill (0,0) circle (#1);} 

使用如下:

\fullcirc
\halfcirc
\emptycirc

在这里插入图片描述

参考文献:https://blog.csdn.net/weixin_43846270/article/details/108202031

2.勾叉
导入引用包和代码:

\usepackage{pifont}       % \ding{xx}
\usepackage{bbding}       % \Checkmark,\XSolid,... (需要和pifont宏包共同使用)

使用如下:

\checkmark
\Checkmark
\CheckmarkBold
\XSolid
\XSolidBold
\XSolidBrush

在这里插入图片描述

其它参见的符号参考Xovee老师的文章,详见参考文献。

在这里插入图片描述

在这里插入图片描述

参考文献:

  • https://blog.csdn.net/hyk_1996/article/details/124486173
  • https://blog.csdn.net/xovee/article/details/122179352

3.纸牌

引用代码如下:

$\clubsuit$
$\spadesuit$
$\heartsuit$
$\diamondsuit$

在这里插入图片描述

其它常见的符号推荐如下所示的博客。

  • https://blog.csdn.net/ying_xu/article/details/51240291
  • https://blog.csdn.net/YEN_CSDN/article/details/79966985

在这里插入图片描述


五.参考文献超链接太长越界

在LaTeX中,通常引用在线文章时,会出现参考文献太长的情况,尤其是URL。如下图所示:

@misc{30,
  title = {Practical behavioral profiling of PowerShell scripts through static analysis (Part2)},
  url = {https://unit42.paloaltonetworks.com/practical-behavioral-profiling-of-powershell-scripts-through-static-analysis-part-2},
  author = {Jeff White},
  year = {2017}
}

在这里插入图片描述

解决方法是导入如下包即可。

\usepackage{url}
\def\UrlBreaks{\do\A\do\B\do\C\do\D\do\E\do\F\do\G\do\H\do\I\do\J
\do\K\do\L\do\M\do\N\do\O\do\P\do\Q\do\R\do\S\do\T\do\U\do\V
\do\W\do\X\do\Y\do\Z\do\[\do\\\do\]\do\^\do\_\do\`\do\a\do\b
\do\c\do\d\do\e\do\f\do\g\do\h\do\i\do\j\do\k\do\l\do\m\do\n
\do\o\do\p\do\q\do\r\do\s\do\t\do\u\do\v\do\w\do\x\do\y\do\z
\do\.\do\@\do\\\do\/\do\!\do\_\do\|\do\;\do\>\do\]\do\)\do\,
\do\?\do\'\do+\do\=\do\#}

导入后的效果如下图所示,而且对齐美观。

在这里插入图片描述

另一种解决方法说是调用breakurl包实现,而URL通常利用“-”连接。

\usepackage{hyperref}
\usepackage[hyphenbreaks]{breakurl}

六.表格越界垂直居中和竖直显示问题

(持续更新中)


总结

写到这里,希望这篇文章对您有所帮助,后续也将继续更新内容,并将一些LaTeX使用技巧进行总结,比如表格、算法、图片等排版内容。

月是故乡明,伟大祖国母亲生日快乐。​见过各地山水,最清澈的还是家乡施秉的杉木河;吃过很多酸汤,最正宗的还是家乡黔东南的红酸白酸。难得这两天回老家看看,看到了家乡的发展和变化;看到了自己零几年的读书笔记;看到了小学中学的奖状和证件,值得纪念的是全县中考第一和那两张全国物理和数学竞赛获奖;看到了父亲为自己包好的各类文学书,以及父亲九几年手写的书法和绘画,并刻在自家的桌椅上(图3),父爱母爱伟大。

​回首,人生犹如贵州连绵的青山绿水,总是起起伏伏,从小学到初中是上升期;紧接着到高中又直线下降;到大学初学程序又波折起伏;硕士毕业初为老师又缓慢下降;到发改借调又短暂回升;读博又起伏波折,如今又直线下降。然而,家乡的大山总能让我们养成质朴的性格,正如女神总笑我去哪都要背着个电脑,陪伴之余还是要敲敲代码,看看这平凡的世界。脚踏实地,知行合一,见笑见笑,爱你们喔!祝大家双节快乐。

在这里插入图片描述
在这里插入图片描述

(By:Eastmount 2023-10-03 夜于黔东南 http://blog.csdn.net/eastmount/ )

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

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

相关文章

免费服务器搭建网盘教程,给电脑挂载500G磁盘

免费服务器搭建网盘教程,给电脑挂载500G磁盘 请勿注册下载,注册下载是空白文件,使用免登录下载 免费搭建网盘教程,给电脑挂载500G磁盘 其他按照下载教程操作教程代码: 下载下来的文件pancn 文件拖到您创建的容器 手机的话点击…

linux内核分析:网络协议栈

从本质上来讲,所谓的建立连接,其实是为了在客户端和服务端维护连接,而建立一定的数据结构来维护双方交互的状态,并用这样的数据结构来保证面向连接的特性。TCP 无法左右中间的任何通路,也没有什么虚拟的连接,中间的通路根本意识不到两端使用了 TCP 还是 UDP。 所谓的连接…

触摸屏驱动

驱动框架 多点电容触摸芯片的接口,一般都为 I2C 接口,因此驱动主框架肯定是 I2C。 当设备树中触摸 IC的设备节点和驱动匹配以后 。进入probe入口函数。在此函数中初始化触摸 IC,中断和 input 子系统等 linux 里面一般都是通过中断来上报触…

PTrade获取交易日期——时间相关函数1

本系列文章将笔者平时在使用ptrade进行策略开发中使用到的与日期相关的函数进行记录,以便大家参考并一同改进优化。 如果读者还有其他日期相关的函数实现需求,也可以留言,大家一起讨论补充。 首先看一下ptrade提供的get_trading_day函数的用…

vivado杂项记录

文章目录 问题的解决Xilinx Vitis 启动时未响应的解决方法Spawn failed:No error错误vivado卡在Initializing Language Server的解决方法vivado中添加文件后出现non-module 其他关于MAX_FANOUT属性vviado 2018.3中IP的core container 问题的解决 Xilinx Vitis 启动…

typescript 分析泛型工具类Partial的实现原理理解索引查询类型

Partial实现原理 在 TypeScript 中,Partial 是一个非常有用的工具类型,它能够将一个对象类型的所有属性变为可选。Partial 的实现原理是通过使用映射类型(Mapped Type)和 keyof 关键字来实现的。 下面我们来看一下 Partial 的实现…

System Generator初体验FIR滤波器

文章目录 前言一、介绍1、目标2、过程 二、步骤 1&#xff1a;在 FPGA 中创建设计1、打开 Lab1_1.slx 文件2、运行仿真3、使用 System Generator 创建 FIR 滤波器<1>、从库浏览器寻找需要的模块<2>、配置系统生成器块<3>、在 FPGA 上实现设计 三、步骤 2&…

第一章 函数 极限 连续(解题方法须背诵)

&#xff08;一&#xff09;求极限的常用方法 方法1 利用有理运算法则求极限 方法2 利用基本极限求极限 方法3 利用等价无穷小求极限 方法4 利用洛必达法则求极限 方法5 利用泰勒公式求极限 方法6 利用夹逼准则求极限 方法7 利用定积分的定义求极限 方法8 利用单调有界…

JMeter界面和字体的调整

一、界面直接调整 二、调整界面比例&#xff08;分辨率&#xff09; jmeter.hidpi.modetrue jmeter.hidpi.scale.factor2.0用记事本打开 将如下代码中的第一行和第五行的注释去掉即可 #jmeter.hidpi.modetrue # HiDPI scale factor #jmeter.hidpi.scale.factor1.0 # Suggeste…

sheng的学习笔记-【中文】【吴恩达课后测验】Course 1 - 神经网络和深度学习 - 第三周测验

课程1_第3周_测验题 目录&#xff1a;目录 第一题 1.以下哪一项是正确的&#xff1f; A. 【  】 a [ 2 ] ( 12 ) a^{[2](12)} a[2](12)是第12层&#xff0c;第2个训练数据的激活向量。 B. 【  】X是一个矩阵&#xff0c;其中每个列都是一个训练示例。 C. 【  】 a 4 […

互联网Java工程师面试题·MyBatis 篇·第一弹

目录 1、什么是 Mybatis&#xff1f; 2、Mybaits 的优点 3、MyBatis 框架的缺点 4、MyBatis 框架适用场合 5、MyBatis 与 Hibernate 有哪些不同&#xff1f; 6、#{}和${}的区别是什么&#xff1f; 7、当实体类中的属性名和表中的字段名不一样 &#xff0c;怎么办 &#x…

ERROR 6400 --- [ main] com.zaxxer.hikari.pool.HikariPool : root - Exception

在引用的日志中&#xff0c;报告了Hikari连接池初始化期间的异常。具体异常信息是"Exception during pool initialization"。这个异常可能是由于与MySQL数据库的通信链接失败导致的。在引用中也提到了与SSL连接相关的错误。 根据引用中提供的代码&#xff0c;可以看到…

docker方式启动一个java项目-Nginx本地有代码,并配置反向代理

文章目录 案例导入说明1.安装MySQL1.1.准备目录1.2.运行命令1.3.修改配置1.4.重启 2.导入SQL3.导入Demo工程3.1.分页查询商品&#xff08;仔细看代码&#xff0c;很多新的MP编程技巧&#xff09;3.2.新增商品3.3.修改商品3.4.修改库存3.5.删除商品3.6.根据id查询商品3.7.根据id…

html 高性能 简易轮播图

目标 实现简易轮播图动画效果 设计理念 无论有多少个轮播图&#xff0c;仅使用常数个轮播图tab&#xff0c;通过js替换更新dom内容&#xff0c;实现性能优化&#xff1b;使用bfc避免回流&#xff0c;&#xff08;重绘是基本上无法避免&#xff0c;不在考虑&#xff09;&#…

CompletableFuture异步回调

CompletableFuture异步回调 CompletableFutureFuture模式CompletableFuture详解1.CompletableFuture的UML类关系2.CompletionStage接口3.使用runAsync和supplyAcync创建子任务4.设置子任务回调钩子5.调用handle()方法统一处理异常和结果6.线程池的使用 异步任务的串行执行thenA…

【做题笔记】多项式/FFT/NTT

HDU1402 - A * B Problem Plus 题目链接 大数乘法是多项式的基础应用&#xff0c;其原理是将多项式 f ( x ) a 0 a 1 x a 2 x 2 a 3 x 3 ⋯ a n x n f(x)a_0a_1xa_2x^2a_3x^3\cdotsa_nx^n f(x)a0​a1​xa2​x2a3​x3⋯an​xn中的 x 10 x10 x10&#xff0c;然后让大数的…

20230922 比赛总结

反思 A 考场降智&#xff0c;没想到拆分成 2 α 5 β x 2^{\alpha}5^{\beta}x 2α5βx 的形式&#xff0c;一直在卡精度&#xff08;thx anti) B 又是随机题&#xff0c;又是 b l bl bl 题&#xff0c;差点又被区分了 C 我是 s b sb sb&#xff0c;排序顺序有点小问题…

concrt140.dll丢失怎么恢复?教你三种最简单的解决方法

今天早上&#xff0c;当我打开电脑时&#xff0c;突然看到一个提示窗口&#xff0c;显示找不到 concrt140.dll 文件。我一下子懵了&#xff0c;不知道这是怎么回事&#xff0c;也不知道如何解决这个问题。于是&#xff0c;我开始了寻找答案的旅程。首先&#xff0c;我了解到 co…

深入理解浏览器渲染原理

文章目录 浏览器是如何渲染页面的渲染流程解析HTML&#xff08;构建DOM树&#xff09;解析过程中遇到JS代码 样式计算1. 解析CSS代码2. 转换样式表中的属性值&#xff0c;使其标准化3. 计算DOM树中每个节点的具体样式CSS继承规则CSS层叠规则 布局分层分层update layer tree 绘制…

博物馆藏品管理系统-美术馆藏品管理系统

一、项目背景 文物作为前史留存下来最为珍贵的遗物&#xff0c;具有非常高的科学价值和艺术价值&#xff0c;博物馆的存在便是为了保存这些珍贵的前史文化遗产&#xff0c;所以对博物馆的建造必定要重视品质问题。对博物馆的库存办理工作也必定要注意细节&#xff0c;不能出一…