调整 biblatex 数字样式方括号的垂直对齐方式

调整 biblatex 数字样式方括号的垂直对齐方式

我对方括号的垂直对齐有同样的问题,如下所述问题。但是,我仅有的方括号是 biblatex 数字样式用于引用的方括号。因此,我认为我不需要自动调整,但可能只需\printtext[brackets]要从 biblatex 进行调整。

但是,我不知道如何启动和调整上述命令。有什么想法吗?

答案1

我们可以只重新定义所使用的括号,biblatex如下所示

\setbox0=\hbox{0}
\newlength\htz\newlength\dpz
\htz=\ht0\relax
\dpz=\dp0\relax
\let\svlb[
\let\svrb]
\def\shftlb{\setbox0=\hbox{\svlb}\raisebox{%
  \dimexpr-.5\ht0+.5\htz+.5\dp0-.5\dpz}{\svlb}}
\def\shftrb{\setbox0=\hbox{\svrb}\raisebox{%
  \dimexpr-.5\ht0+.5\htz+.5\dp0-.5\dpz}{\svrb}}

\makeatletter
\renewcommand*{\bibleftbracket}{\blx@postpunct\shftlb}
\renewcommand*{\bibrightbracket}{\blx@postpunct\shftrb\midsentence}
\makeatother

“新”括号在上下文中可\shftlb作为插入[\shftrb使用。]biblatex

平均能量损失

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[
backend=biber,
style=numeric
]{biblatex}

\setbox0=\hbox{0}
\newlength\htz\newlength\dpz
\htz=\ht0\relax
\dpz=\dp0\relax
\let\svlb[
\let\svrb]
\def\shftlb{\setbox0=\hbox{\svlb}\raisebox{%
  \dimexpr-.5\ht0+.5\htz+.5\dp0-.5\dpz}{\svlb}}
\def\shftrb{\setbox0=\hbox{\svrb}\raisebox{%
  \dimexpr-.5\ht0+.5\htz+.5\dp0-.5\dpz}{\svrb}}

\makeatletter
\renewcommand*{\bibleftbracket}{\blx@postpunct\shftlb}
\renewcommand*{\bibrightbracket}{\blx@postpunct\shftrb\midsentence}
\makeatother

\addbibresource{biblatex-examples.bib}

\begin{document}
\cite{sigfridsson}
\printbibliography
\end{document}

相关内容