需要根据章节将引用从 [1] ,[2] 更改为 [1.1]

需要根据章节将引用从 [1] ,[2] 更改为 [1.1]

第 1 章中的参考文献应显示为

[1.1] This AB, That CD 等,2010 年

[1.2] These AB, That CD 等,2012 年

第 2 章中的参考文献应显示为

[2.1] They AB, That CD 等,2010 年

[2.2] Them AB、That CD 等,2012 年

平均能量损失

\documentclass[12pt, a4paper]{book}
\usepackage[sectionbib]{chapterbib}
\usepackage[square, numbers, comma, sort&compress]{natbib}

\begin{document}

\input{./Chapters/Chapter1}
\input{./Chapters/Chapter2} 

\end{document}

%-----------Chapter1.tex----------
\chapter{CHAPTER 1}
This is the text \citep{Reference1} from chapter 1. Dummy texts Dummy texts  Dummy texts Dummy texts  Dummy texts Dummy texts  Dummy texts Dummy texts  Dummy texts Dummy texts  Dummy texts Dummy texts\citep{Reference2}  Dummy texts Dummy texts  Dummy texts Dummy texts  Dummy texts Dummy texts  Dummy texts Dummy texts

\bibliographystyle{ieeetr} %
\addcontentsline{toc}{chapter}{REFERENCES} %  adds "REFERENCES" to the table of content
\bibliography{Bibliography}  

%-----------Chapter2.tex----------
\chapter{CHAPTER 2}
This is the text \citep{Reference3} from chapter 2 Dummy texts Dummy texts  Dummy texts Dummy texts  Dummy texts Dummy texts  Dummy texts Dummy texts  Dummy texts Dummy texts  Dummy texts Dummy texts  Dummy\citep{Reference4} texts Dummy texts  Dummy texts Dummy texts  Dummy texts Dummy texts  Dummy texts Dummy texts

\bibliographystyle{ieeetr} %
\addcontentsline{toc}{chapter}{REFERENCES} %  adds "REFERENCES" to the table of content
\bibliography{Bibliography}

%预期输出

第1章

这是第 1 章中的文本[1.1] 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟[1.2] 文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本

参考

[1.1] This AB, That CD 等,2010 年

[1.2] These AB, That CD 等,2012 年

第2章

这是第 2 章中的文本[2.1] 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟[2.2] 文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本 虚拟文本

参考

[2.1] They AB, That CD 等,2010 年

[2.2] Them AB、That CD 等,2012 年

答案1

您正在使用chapterbibnatbib。根据文档中的建议,您应该通过\include而不是来包含您的章节文件\input\include提供了一个单独的辅助文件,该文件由使用chapterbib

该软件包chapterbib提供了命令\CitationPrefix,但遗憾的是与不兼容natbib。但是,您可以通过一个小技巧使用此命令(如下例所示)。

本示例需要对每一章进行额外的 bibtex 编译。我按照araraMWE 中所示简化了编译步骤。

% arara: pdflatex:
% arara: bibtex:  { files: [Chapter1 , Chapter2] }
% arara: pdflatex
% arara: pdflatex

\RequirePackage{filecontents}
\begin{filecontents}{Chapter1.tex}
%-----------Chapter1.tex----------
\chapter{CHAPTER 1}
This is the text \citep{knuth79}

\bibliographystyle{ieeetr}
\bibliography{Bibliography}  
\end{filecontents}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{filecontents}{Chapter2.tex}
%-----------Chapter2.tex----------
\chapter{CHAPTER 2}
This is the text \citep{goossens93}

Dummy texts  Dummy \citep{lamport94}

\bibliographystyle{ieeetr} %
\bibliography{Bibliography}
\end{filecontents}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{filecontents}{Bibliography.bib}
@book{goossens93,
    author = "Michel Goossens and Frank Mittlebach and Alexander Samarin",
    title = "The Latex Companion A",
    year = "1993",
    publisher = "Addison-Wesley",
    address = "Reading, Massachusetts"

}

@book{knuth79,
    author = "Donald E. Knuth",
        title = "Tex and Metafont, New Directions in Typesetting",
    year = {1979{(}1950{)}},
    publisher = "American Mathematical Society and Digital Press",
    address = "Stanford"
}

@book{lamport94,
    author = "Leslie Lamport",
    title = "Latex: A Document Preparation System",
    year = "1994",
    edition = "Second",
    publisher = "Addison-Wesley",
    address = "Reading, Massachusetts"
}
\end{filecontents}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\documentclass[12pt, a4paper]{book}
\usepackage{chapterbib}
\usepackage{tocbibind}
\usepackage[sectionbib,square, numbers, comma, sort&compress]{natbib}
\makeatletter
\let\@cb@insertprefix\relax
\def\@biblabel#1{[\@CitationPrefix#1]}
\def\NAT@open{[\@CitationPrefix}
\makeatother


\CitationPrefix{\thechapter.}

\begin{document}

\include{Chapter1}
\include{Chapter2} 

\end{document}

相关内容