我在格式化包时遇到了一些问题bicaption
,想请教一下,是否有人可以指出一些解决方法。
我想昨天已经太晚了,所以首先我向 Axel 致歉!另外抱歉没有提供 MWE,我现在将其包括在内:
\documentclass[12pt,halfparskip,BCOR0pt,DIV12]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage[intlimits]{amsmath}
\usepackage[a4paper,left=2.5cm, right=2.5cm,top=2.5cm, bottom=2cm,headsep=0.865cm]{geometry}
\usepackage{graphicx}
\usepackage{bicaption}
\captionsetup[figure][bi]{labelfont=it, font=it,justification=raggedright, singlelinecheck=false, margin={0mm,0mm}}
\captionsetup[figure][bi-first]{name=Bild}
\captionsetup[figure][bi-second]{name=Fig.}
\numberwithin{figure}{section}
\begin{document}
\section{Exemplum}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.
\begin{figure}[h]
\includegraphics[width=\textwidth]{sample.png}
\captionsetup{skip=0pt,}
\bicaption{Beispieltext}{Sample}
\label{fig:Q-pd}
\end{figure}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.
\end{document}
我遇到了两个主要问题和一个悬而未决的问题:
引用 bi-first 的命令不起作用,标题仍然是“Abbildung”,这是为什么?
对于第一个标题“Abbildung”,有一个缩进,我只能
ident=-6pt
在文本中的每个双标题中避免缩进,为什么会这样?我如何才能全局删除标题的缩进?我尝试使用raggedright
此处的设置,但没有效果,Raggedright
使用包ragged2e
会导致意外错误并且不起作用。格式看起来应该是这样的,给定类型和数字与文本之间的偏移量(制表符),标题一与标题二对齐:
图片 x.xx:_{tab}_Text
图 x.xx:_{tab}_Text
如何设置图形编号和标题之间的距离,以使第一个和第二个标题对齐,但有偏移?
感谢您的任何建议,也感谢 Axel 提出这个很棒的包裹!
答案1
name=
暂时不支持由 控制的双字幕babel
。如果要全局更改名称,请使用
\addto\captionsngerman{\renewcommand\figurename{Bild}}
而是。如果您只想更改双字幕的名称,您(目前)需要一个辅助构造作为解决方法,如下所示:
\captionsetup[figure][bi-first]{ngermanname=Bild}
\makeatletter
\DeclareCaptionOption{ngermanname}{%
\l@addto@macro\captionsngerman{\captionsetup{name={#1}}}}
\makeatother
但为什么它对英语字幕有效?因为该字幕语言不受控制,babel
因为您没有为bicaption
包提供第二种语言,例如使用\usepackage[lang=english]{bicaption}
或\captionsetup[bi-second]{lang=english}
。
我刚填了一张票1并将在接下来的几周内修复此错误,因此上述解决方法不再必要。
背景:将更改用于标记标题name=Bild
的定义,但稍后包会将语言(使用)切换为第一个标题,这会将定义更改回。因此,为了使其工作,我需要在我的包中添加对双标题选项的特殊处理,需要存储和使用参数\figurename
bicaption
babel
ngerman
\figurename
Abbildung
name=
bicaption
后切换语言。
2a. 我无法在此重现此问题。您的 TeX 发行版是最新的吗?您能添加不需要的缩进的图片吗?它在我的 PC 上看起来是这样的(TeXlive 2015,今天更新):
如果“Abbildung”(或“Bild”)缩进,这可能是由于设置语言时插入空格造成的。\captionsngerman
您的文档中是否扩展了?如果是,请注意不需要的空格!http://www.komascript.de/signifikante阅读(抱歉,这个链接是德语的,我不知道有没有英语版本。)
2b. 在您的示例文档中更改justification=raggedright
为justification=RaggedRight
这里也可以正常工作,您收到了什么错误消息?
- 可以通过定义自己的标题格式来实现这一点,
\DeclareCaptionFormat
将标签加分隔符放入固定宽度的框中,例如:
\DeclareCaptionFormat{6cm}{\hbox to 6cm{#1#2\hfill}#3\par}
\captionsetup[figure][bi]{format=6cm}
(6cm 有点太多了,所以你需要根据自己的需要调整这个值。)