
Pelo que entendi, existem duas maneiras de carregar o ctex
pacote: como uma classe de documento (ou seja, \documentclass{ctexbook}
ou como um pacote (ou seja \usepackage{ctex}
). Como estou usando outra classe de documento, selecionei a última. Isso significa, no entanto, que o documento usa o inglês para títulos em todo o documento (por exemplo, índice, glossário).
Quando tento renomear os títulos de partes dos documentos, usando \CTEXoptions
, isso sempre falha. Por exemplo:
\documentclass{book}
\usepackage{ctex}
\usepackage{xeCJK}
\usepackage{fontspec}
\CTEXoptions[contentsname={目录名}]
\begin{document}
\tableofcontents
\chapter{This is a chapter title}
\end{document}
Isso falha ao compilar:
! Package xkeyval Error: `contentsname' undefined in families `CTEX'.
See the xkeyval package documentation for explanation.
Type H <return> for immediate help.
...
l.6 \CTEXoptions[contentsname={目录名}]
- Como posso definir corretamente os nomes desses itens no meu documento?
contentname 目录名
listfigurename 表格目录
listtablename 插图目录
nome da figura
nome da tabela
nome abstrato
nome de índice
bibname 参考文献
Responder1
Carregue o ctexcap
pacote em vez de ctex
. Isso redefinirá automaticamente as strings mencionadas na sua pergunta. O comando \CTEXoptions[contentsname={目录名}]
também funcionará.
P/S: Certamente 目录名 está errado?
Responder2
Este é um longo comentário da resposta de LianTze Lim.
Carregar
ctexcap
pacote para outras classes de documentos.Mas você só deve carregarctexcap
as classes de documentos baseadas em standardarticle
ereport
book
. Por exemplo, você pode usarctexcap
junto comextarticle
eltxdoc
, mas NÃO deve usarctexcap
combeamer
,scrartcl
oumoderncv
. Actallyctexcap
raramente é usado.
(EDITAR: Bem, não importa)Você não precisa usar
xeCJK
efontspec
explicitamente ao usarctex
o pacote.目录名
deveria estar目录
.Você está convidado a fazer esse tipo de pergunta emFórum CTeX.