LaTex 不会在参考书目中打印卷后的期号

LaTex 不会在参考书目中打印卷后的期号

我大量更改了参考书目的样式(将年份放在开头,将逗号改为点和破折号等)。但现在数字消失了。我怎样才能返回期号?而且标题也消失了!我想要

S. Advani、J. Torok 和 J. Lee。多孔介质中可压缩流体活塞式位移的一般解//能源技术杂志。- 1985 年。- V. 107。- N. 4。- P. 523–526

我现在有

S. Advani、J. Torok 和 J. Lee。能源资源技术杂志。-1985 年 - 第 107 卷 - 第 523-526 页

我如何返回“N.”、发行号并添加点和破折号?我如何在其后添加标题名称和“//”?

 \documentclass{scrartcl} 
\usepackage[ 
    backend=biber, 
    style=numeric
]{biblatex} 

\usepackage[ngerman]{babel} 
\usepackage[babel, german=quotes]{csquotes} 
\renewbibmacro{in:}{} 

\ExecuteBibliographyOptions{% 
bibencoding=utf8, 
bibwarn=true, 
sortlocale=de_DE, 
isbn=false, 
url=false, 
doi=false, 
eprint=false, 
clearlang=true, 
maxbibnames=99, 
firstinits=true, 
sorting=none, 
} 
\DeclareFieldFormat[article]{title}{} 
\DeclareFieldFormat{date}{{#1}} 
\DeclareFieldFormat[article]{number}{} 
%\DeclareFieldFormat{pages}{\mkfirstpage[{\mkpageprefix[bookpagination]}]{#1}} 
\DefineBibliographyStrings{german}{% 
   page = {{}{}}, 
   pages = {{}{}}, 
} 

%\renewbibmacro*{volume+number+eid}{%
  %\printfield{volume}%
  %\setunit*{\space}%
 % \printfield{number}%
  %\setunit{\addcomma\space}%
  %\printfield{eid}}
  

\renewbibmacro*{journal+issuetitle}{%
  \usebibmacro{journal}%
  \setunit*{\adddot \addspace \text{--} \addspace}%точка-тире после издателя
  \iffieldundef{series}
    {}
    {\newunit
     \printfield{series}%
     \setunit{\addspace}}%
  \usebibmacro{issue+date}%
  \setunit{\adddot\space \text{--}\space \text{V.} }% точка-тире после года
  \usebibmacro{volume+number+eid}% 
 \setunit{\addcolon\space}%
  \usebibmacro{issue}%
  \newunit}
  
\renewbibmacro*{volume+number+eid}{%
  \printfield{volume}%
  \newunit
  \printfield{number}%
  \newunit
  \printfield{eid}%
}

\newbibmacro*{issue+date}{% убираем скобочки вокруг года
    \iffieldundef{issue}
      {\usebibmacro{date}}
      {\printfield{issue}%
       \setunit*{\addspace}%
       \usebibmacro{date}}%
  \newunit}

\renewcommand*{\bibpagespunct}{\addperiod \space \text{--}\space  \text{P.}}% точка тире перед номером страницы
  
\addbibresource{mybib.bib} 

\begin{document} 

Text~
%\cite{jadhunandan1991spontaneous}, \cite{Bromierung}, \cite{carter1957derivation}, 
\cite{advani1985general}

\printbibliography 

\end{document}

.bib 文件:

 @article{advani1985general,
  title={General solutions for pistonlike displacement of compressible fluids in porous media},
  author={Advani, SH and Torok, JS and Lee, JK},
  journal={Journal of energy resources technology},
  volume={107},
  number={4},
  pages={523--526},
  year={1985},
  publisher={American Society of Mechanical Engineers}
}

答案1

你有

\DeclareFieldFormat[article]{title}{}

\DeclareFieldFormat[article]{number}{}

在您的序言中。这两个命令都定义了空字段格式。如果字段格式为空,则根本不会打印相应的字段。

如果你使用

\DeclareFieldFormat[article]{title}{#1}
\DeclareFieldFormat[article]{number}{#1}

您应该在输出中看到这些字段。

相关内容