springer 在线投稿编译踩坑

springer投稿,在线编译踩坑总结


注意:

  1. 有的期刊需要双栏,而预定义的模板中可能为单栏,需要增加iicol选项。

例如:
\documentclass[sn-mathphys-num]{sn-jnl}% --->\documentclass[sn-mathphys-num, iicol]{sn-jnl}%

  1. 上传提醒:

删掉多余的文件,例如模板中自带的sn-article.pdfempty.eps,只保留与编译有关的文件。【任何一个多余文件都不可以有!!!】否则冗余文件直接出现在正文里。补充材料里需要的图也要删掉,因为补充材料直接以pdf格式上传,不需要图文件。

  1. 补充材料

pdf格式上传,选择补充材料supp....类型。编译成功后,将以超链接的形式,出现在最后一页。见下图:

  1. 文件组织结构

所有文件需要放在一级目录下,不支持二级目录。就是不能有子文件夹。

  1. 线下编译状态

自己编译不能有任何报错及警告(对,警告也不行)


以下是一些线下编译的警告(springer线上不显示错误信息,直接编不出参考文献)

  1. 警告:Package breakurl Warning: You are using breakurl while processing via pdflatex.(breakurl) \burl will be just a synonym of \url.

解决方法:打开sn-jnl.cls文件,找到:

复制代码
\gdef\breakurldefns{%
\if@pdflatex\else%
  \RequirePackage[hyphenbreaks]{breakurl}%
%  \let\href\burlalt%
\fi}%
\breakurldefns%

注释:

复制代码
% \gdef\breakurldefns{%
% \if@pdflatex\else%
%   \RequirePackage[hyphenbreaks]{breakurl}%
% %  \let\href\burlalt%
% \fi}%
% \breakurldefns%
  1. 致谢位置报错:
    Package hyperref Warning: Difference (4) between bookmark levels is greater than one, level fixed on input line 801.

报错位置:

复制代码
\backmatter

\bmhead{Acknowledgements}

This work was supported in part ... %Line801

问题:

\bmhead标签同\subsubsection时一个级别的,相当于\section中直接添加了\subsubsection。跳过了\subsection.

解决:

添加:

复制代码
\usepackage{hyperref}
\usepackage{bookmark}

此处参考了链接: https://blog.csdn.net/weixin_43423614/article/details/132050668

  1. 警告:Package caption Warning: Unknown document class (or package), standard defaults will be used. See the caption package documentation for explanation.

问题分析:

因为Springer模板重新定义了caption的格式,而本文使用了subfig这个包,因此会覆盖掉caption的预定义,因此,在usepackage时禁用掉caption定义就行。

解决:

复制代码
\usepackage[caption=false]{subfig}

注意,不要有额外的\usepackage{caption}

参考:链接: https://blog.csdn.net/u012796629/article/details/122387892

  1. 警告:to sort, need author or key in OpenCVDocs

问题分析:存在某条参考文献,没有authorkey这两个关键字段,所以无法给文献排序。(其实就是OpenCV这个文献)

解决方法:

step a.

找到sn-jnl.cls文件,将对应参考文献格式下的条件语句进行修改,以sn-mathphys-ay格式为例 (对应\bibliographystyle{sn-mathphys-ay}):

原文件1661行:

复制代码
\if@Mathphys@ayrefstyle%
\usepackage[authoryear]{natbib}%
 \gdef\NumBib{NO}%
  \bibliographystyle{sn-mathphys-ay}%
  \setlength{\bibsep}{1em}%
  \def\bibfont{\reset@font\fontfamily{\rmdefault}\normalsize\selectfont}%

修改为:

复制代码
\if@Mathphys@ayrefstyle%
 % \usepackage[authoryear]{natbib}%
 %  \gdef\NumBib{NO}%
 \usepackage[numbers, sort&compress]{natbib}%
  \gdef\NumBib{YES}%
  \bibliographystyle{sn-mathphys-ay}%
  \setlength{\bibsep}{1em}%
  \def\bibfont{\reset@font\fontfamily{\rmdefault}\normalsize\selectfont}%

step b.

找到*.bst文件(取决于documentclass用什么模板,就找哪个*.bst文件),例如sn-mathphys-ay格式,就修改sn-mathphys-ay.bst文件:

注释掉SORT这一行。可能有一处,可能有两处。

复制代码
ITERATE {presort}

% SORT

INTEGERS { longest.label.width last.extra.num number.label }

step c.

bib文件中,确认所有的参考文献都有authorkey。(可以通过统计@author的数量做一个快速的校验)没有的就补上。比如,我的:

复制代码
@misc{OpenCVDocs,
  title = {OpenCV},
  howpublished = {\url{https://docs.opencv.org/4.x/index.html}},
  note = {Accessed: June 14, 2024},
  year = {2024}
}

补充key:

复制代码
@misc{OpenCVDocs,
  title = {OpenCV},
  key={OpenCV},
  howpublished = {\url{https://docs.opencv.org/4.x/index.html}},
  note = {Accessed: June 14, 2024},
  year = {2024}
}
相关推荐
Chensf20213 天前
用latex+vscode+ctex写毕业论文
vscode·论文·latex·ctex
nlp研究牲9 天前
latex中既控制列内容位置又控制列宽,使用>{\centering\arraybackslash}p{0.85cm}
服务器·前端·人工智能·算法·latex
山登绝顶我为峰 3(^v^)31 个月前
如何录制带备注的演示文稿(LaTex Beamer + Pympress)
c++·线性代数·算法·计算机·密码学·音视频·latex
秋窗71 个月前
Mac 部署Latex OCR并优化体验(打包成App并支持全局快捷键)
macos·ocr·latex
八一考研数学竞赛2 个月前
第十七届全国大学生数学竞赛初赛模拟试题
学习·数学·latex·全国大学生数学竞赛
momo8702 个月前
当你安装TeX Live 2025 却遇到中文用户名时。。。
latex
星夜钢琴手2 个月前
缩小 IEEE 会议论文 LaTeX 模板标题、作者信息和正文的间距
latex·ieee conference
cnkeysky2 个月前
vscode 配置 latex
vscode·latex
磁悬浮青蛙呱呱呱2 个月前
xdvipdfmx:fatal: File ended prematurely. No output PDF file written.
latex
EtherWanderer2 个月前
Markdown 到 LaTeX:Overleaf 学习笔记
笔记·学习·latex