![documentclass{book} 和 utf8、prerenderunicode 存在问题](https://linux22.com/image/279177/documentclass%7Bbook%7D%20%E5%92%8C%20utf8%E3%80%81prerenderunicode%20%E5%AD%98%E5%9C%A8%E9%97%AE%E9%A2%98.png)
我正在尝试用希腊语写一份类似书籍的报告,因此在每个偶数页的开头都会显示章节名称,在每个奇数页的开头都会显示部分名称。我使用以下代码
\documentclass[10pt,a4paper,twoside]{book}
\usepackage[english,greek]{babel}
\usepackage[utf8x]{inputenc}
\usepackage{graphicx}
\usepackage{amsmath, amsthm, amssymb}
\usepackage{fancyhdr}
\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{%
\markboth{#1}{}}
\renewcommand{\sectionmark}[1]{%
\markright{\thesection\ #1}}
\fancyhf{} % delete current header and footer
\fancyhead[LE,RO]{\bfseries\thepage}
\fancyhead[LO]{\bfseries\rightmark}
\fancyhead[RE]{\bfseries\leftmark}
\renewcommand{\headrulewidth}{0.5pt}
\renewcommand{\footrulewidth}{0pt}
\addtolength{\headheight}{0.5pt} % space for the rule
\fancypagestyle{plain}{%
\fancyhead{} % get rid of headers on plain pages
\renewcommand{\headrulewidth}{0pt} % and the line
}
\newcommand{\en}{\selectlanguage{english}}
\newcommand{\gr}{\selectlanguage{greek}}
\newtheorem{thm}{Θεώρημα}[chapter]
\newenvironment{proof1}[1][Απόδειξη:]{\begin{trivlist}
\item[\hskip \labelsep {\bfseries #1}]}{\end{trivlist}}
\begin{document}
\end{document}
但是当我编译我的 tex 时,我在偶数页的开头得到了这个(请注意,它在奇数页上正常工作)
它实际上说请插入 prerenderunicode(类似的东西)。
我有一个可以运行的模板,但是运行的\usepackage[iso-8859-7]{inputenc}
命令对于我的 TeXnicCenter 2.0 和 MikTeX 2.9 来说已经过时了,所以我认为\documentclass{book}
和之间存在某种冲突utf8x
,因为当我更改时 \usepackage[iso-8859-7]{inputenc}
它 \usepackage[utf8x]{inputenc}
根本不起作用(0 页)。\usepackage[utf8]{inputenc}
甚至我编写的代码都不起作用。有人遇到过同样的问题吗?提前致谢。
答案1
问题在于准备包含希腊字符的标头时。如果您有最新的 TeX 发行版,只需删除utf8x
并使用该utf8
选项即可。
我为proof
环境添加了一个补丁,使用粗体表示“Proof”一词,并用冒号代替句号,因此您可以使用它,而不必定义另一个环境。
\documentclass[10pt,a4paper,twoside]{book}
\usepackage[english,greek]{babel}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{amsmath,amsthm,amssymb}
\usepackage{xpatch} % for patching ‘proof’
\usepackage{fancyhdr}
\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\renewcommand{\sectionmark}[1]{\markright{\thesection\ #1}}
\fancyhf{} % delete current header and footer
\fancyhead[LE,RO]{\bfseries\thepage}
\fancyhead[LO]{\bfseries\rightmark}
\fancyhead[RE]{\bfseries\leftmark}
\renewcommand{\headrulewidth}{0.5pt}
\renewcommand{\footrulewidth}{0pt}
\addtolength{\headheight}{0.5pt} % space for the rule
\fancypagestyle{plain}{%
\fancyhead{}% get rid of headers on plain pages
\renewcommand{\headrulewidth}{0pt}% and the line
}
\newtheorem{thm}{Θεώρημα}[chapter]
\xpatchcmd{\proof}{\itshape}{\bfseries}{}{}
\xpatchcmd{\proof}{.}{:}{}{}
\usepackage{kantlipsum} % just for filling with nonsense text
\begin{document}
\chapter{Θεώρημα}
\section{Απόδειξη}
\kant[1]
\begin{thm}
I don't know Greek.
\end{thm}
\begin{proof}
I said it.
\end{proof}
\kant
\end{document}