我有大量的俄语文本,我正在尝试建立简单的解决方案,以便在文本中打开/关闭连字符,并在文本中将数字和日期作为平面文本。
我尝试过一些无法正常工作的变体。 如何防止 LaTeX 对整个文档进行连字符连接?。这篇文章是一个起点,我也尝试了这篇文章中的建议:hyphsubst 与 inputenc 冲突。
我的代码,理论上的问题可能是我一直在使用babel
包:
\documentclass[11pt,a4paper]{article}
\usepackage[T1,T2A,T2B,T2C]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[russian]{babel}
%Added package.
\usepackage{geometry}
\geometry{lmargin=1.18in, rmargin = 0.5in, tmargin = 1.08in, bmargin=0.6in}
\begin{document}
Длинный текст, который не переноситься корректно, особенно если в него добавить длинные слова и номера, например даты рождения 01.01.2001 или еще какие-нибудь цифры, 10000131342424.
\end{document}
总而言之,我需要一些库或技巧,可以正确地换行,而无需使用连字符(如果可能的话)。我在使用链接帖子的解决方案时遇到的主要问题是单词超出了文档的边界。
编辑: 尽管我使用的几何体可能会产生问题。下面介绍的解决方案不适用于上述代码。(我只添加了几何包)。
答案1
您可以尝试这样的事情:
\newcommand*{\nohyphens}{\hyphenpenalty=10000\exhyphenpenalty=10000\relax}
要限制命令的范围,请将其包含在组中。例如,用花括号括住命令和文本:
{\nohyphens
Длинный текст, который не переноситься корректно, особенно если в него добавить длинные слова и номера, например даты рождения 01.01.2001 или еще какие-нибудь цифры, 10000131342424.
}
请注意,通过禁止连字符,您可以减少 TeX 查找良好换行符的选项。这将导致更多坏框和更多文本流入边距的情况。您可以使用以下方法暂时放宽 TeX 对其自身施加的印刷标准:
\sloppypar
或者,您可以关闭非连字符文本的对齐功能:
{\nohyphens\raggedright
Длинный текст, который не переноситься корректно, особенно если в него добавить длинные слова и номера, например даты рождения 01.01.2001 или еще какие-нибудь цифры, 10000131342424.
}
上述最小示例的完整代码:
\documentclass[11pt,a4paper]{article}
\newcommand*{\nohyphens}{\hyphenpenalty=10000\exhyphenpenalty=10000\relax}
\usepackage[T1,T2A,T2B,T2C]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[russian]{babel}
\begin{document}
Длинный текст, который не переноситься корректно, особенно если в него добавить длинные слова и номера, например даты рождения 01.01.2001 или еще какие-нибудь цифры, 10000131342424.
{\nohyphens
Длинный текст, который не переноситься корректно, особенно если в него добавить длинные слова и номера, например даты рождения 01.01.2001 или еще какие-нибудь цифры, 10000131342424.
}
\end{document}
答案2
使用具有hyphenrules
特殊nohyphenation
(伪)语言的环境。
\documentclass[11pt,a4paper]{article}
\usepackage[T1,T2A,T2B,T2C]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[russian]{babel}
\begin{document}
Длинный текст, который не переноситься корректно, особенно
если в него добавить длинные слова и номера, например даты
рождения 01.01.2001 или еще какие-нибудь цифры, 10000131342424.
\begin{hyphenrules}{nohyphenation}
Длинный текст, который не переноситься корректно, особенно
если в него добавить длинные слова и номера, например даты
рождения 01.01.2001 или еще какие-нибудь цифры, 10000131342424.
\end{hyphenrules}
\end{document}