정의된 참고문헌 항목 수 이후의 새 페이지

정의된 참고문헌 항목 수 이후의 새 페이지

biblatex-backend 와 함께 사용하고 있습니다 biber. 참고문헌에 나열된 항목 수를 페이지당 특정 수로 제한할 수 있습니까? 예를 들어, 참고문헌 항목 10개 이후에 새 페이지를 만들고 싶습니다.

정말 감사합니다.

답변1

대부분의 설정에서 작동하는 간단한 방법 중 하나는 다음과 같습니다.

\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}

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

\newcounter{bibitemcount}

\renewbibmacro{finentry}{%
  \finentry
  \ifbibliography
    {\stepcounter{bibitemcount}%
     \ifnumless{\value{bibitemcount}}{10}
       {}
       {\newpage
        \setcounter{bibitemcount}{0}}}
    {}%
}

\addbibresource{biblatex-examples.bib}


\begin{document}
\nocite{*}
\printbibliography
\end{document}

그러나 참고문헌 환경에서 새 페이지를 시작하는 코드를 추가하는 것이 조금 더 나을 수도 있습니다. 이는 스타일에 따라 다르므로 이식성이 떨어집니다. 아래 예는 에 대한 것입니다 style=numeric. 해당 스타일의 원본은 \defbibenvironment{bibliography}다음에서 찾을 수 있습니다.numeric.bbx(biblatex v3.15a의 ll. 20-33).

\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}

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

\newcounter{bibitemcount}


\defbibenvironment{bibliography}
  {\list
     {\printtext[labelnumberwidth]{%
        \printfield{labelprefix}%
        \printfield{labelnumber}}}
     {\setlength{\labelwidth}{\labelnumberwidth}%
      \setlength{\leftmargin}{\labelwidth}%
      \setlength{\labelsep}{\biblabelsep}%
      \addtolength{\leftmargin}{\labelsep}%
      \setlength{\itemsep}{\bibitemsep}%
      \setlength{\parsep}{\bibparsep}}%
      \renewcommand*{\makelabel}[1]{\hss##1}}
  {\endlist}
  {\stepcounter{bibitemcount}%
      \ifnumless{\value{bibitemcount}}{11}
        {}
        {\newpage
         \setcounter{bibitemcount}{0}}%
   \item}

\addbibresource{biblatex-examples.bib}


\begin{document}
\nocite{*}
\printbibliography
\end{document}

관련 정보