子部分中的 \hbox 溢出

子部分中的 \hbox 溢出

抱歉,我的文档的序言很长,这是一个 RSC 模板,我对其进行了修改以适应我的论文的规范。我的一些小节的标题是很长的化学名称,这些小节产生了过满\hbox错误。我很高兴在小节标题中加入一个破折号,以便它能够转到下一行而不会超出文档的界限。有没有办法可以自动执行此操作。\usepackage{microtype}没有帮助。我知道我可以手动添加破折号然后使用\sloppy,但有没有办法可以自动产生相同的效果?提前致谢。示例如下:

\documentclass[12pt,oneside,onecolumn]{report}
\oddsidemargin 2.0cm %this makes the bound margin
\evensidemargin 0cm
\textwidth 15cm %controls column width, indirectly
\headheight 1.0in
\topmargin -3.0cm %can be used to adjust top and bottom margins
\textheight 22cm % if both margins top and bottom margins are too small this          must be changed
\usepackage[super,sort&compress,comma]{natbib} 
\usepackage[version=3]{mhchem}
\usepackage{times,mathptmx}
% \usepackage{times}
% feel free not to use mathptmx if it causes difficulties
\usepackage{sectsty}
\usepackage{balance} 
\usepackage{gensymb}
\usepackage{graphicx} %eps figures can be used instead
\usepackage{epstopdf}
\usepackage{lastpage}
\usepackage[format=plain,justification=raggedright,singlelinecheck=false,font=small,labelfont=bf,labelsep=space]{caption} 
\usepackage{fancyhdr}
\usepackage{lastpage}
\usepackage{amsmath}
\usepackage{float}
\pagestyle{fancy}
\fancyhf{}
\usepackage{titlesec, blindtext, color}
\newcommand{\hsp}{\hspace{5pt}}
\titleformat{\chapter}[hang]{\normalfont\Large\bfseries}{\thechapter\hsp$\cdotp$\hsp}{0pt}{\normalfont\Large\bfseries}
\titlespacing*{\chapter}{0pt}{-30pt}{20pt}

\newcommand{\sur}[1]{\ensuremath{^{\textrm{#1}}}}
\newcommand{\sub}[1]{\ensuremath{_{\textrm{#1}}}}


\usepackage{setspace}
\usepackage{lastpage}
\rfoot{\thepage }
%Page  \hspace{1pt} of \pageref{LastPage}
\usepackage[utf8]{inputenc}
\usepackage{helvet}
\renewcommand{\familydefault}{\sfdefault}
\usepackage{chemscheme}
\begin{document}


\spacing{1.3} %this is where the spacing is controlled

\thispagestyle{plain}
\fancypagestyle{plain}{
\renewcommand{\headrulewidth}{1pt}}
\renewcommand{\thefootnote}{\fnsymbol{footnote}}
\renewcommand\footnoterule{\vspace*{1pt}% 
\hrule width 7.5cm height 0.4pt \vspace*{5pt}} 
\setcounter{secnumdepth}{5}



\makeatletter 
\def\subsubsection{\@startsection{subsubsection}{3}{10pt}{-1.25ex plus -1ex minus -.1ex}{0ex plus 0ex}{\normalsize\bf}} 
\def\paragraph{\@startsection{paragraph}{4}{10pt}{-1.25ex plus -1ex minus -.1ex}{0ex plus 0ex}{\normalsize\textit}} 
\renewcommand\@biblabel[1]{#1}            
\renewcommand\@makefntext[1]% 
{\noindent\makebox[0pt][r]{\@thefnmark\,}#1}
\makeatother 
\renewcommand{\figurename}{\small{Fig.}~}
\sectionfont{\normalsize}
\subsectionfont{\normalsize} 

\newcommand{\plus}{\raisebox{.4\height}{\scalebox{.6}{+}}}
\newcommand{\minus}{\raisebox{.4\height}{\scalebox{.8}{-}}}

\subsection{\textit{P,P'}-bis(1,1-dimethylethyl)-\textit{P,P'}-1,3-phenyleneesterphosphinousacid (\textsuperscript{tBu}POCOP)\cite{Goettker-Schnetmann2004b}}


\end{document}

有问题的结果

答案1

我处理过许多古希腊名字,即使我\hyphenation{Tol-ist-o-bog-ii}在序言中使用它们也不会自动中断。我将使用 \- 在文本本身中手动创建断点,例如Tol\-ist\-o\-bog\-ii

在您的情况下,如果在括号前粘贴一个 ( \-),则会留下一个破折号(似乎有效)。

我只想使用\\但这可能不是好形式。

因此:

\subsection{\textit{P,P'}-bis(1,1-dimethylethyl)-\textit{P,P'}-1,3-phenyleneesterphosphinousacid \\ (\textsuperscript{tBu}POCOP)\cite{Goettker-Schnetmann2004b}}

以下是更多信息: 在行末断词

相关内容