TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have some section headings occupying two lines and I'm not satisfied with the way XeLaTeX breaks the heading. If I manually add \\ the output looks fine, but I get the following warning:

[hyperref] Token not allowed in a PDF string (PDFDocEncoding): removing `\\'. 

My code looks like that:

\section{this is a very long title I \\ want to break manually}

Is there a way to have a line-break there without the warning?

share|improve this question
3  
You could use \texorpdfstring within the \section argument. – Stefan Kottwitz Mar 21 '11 at 20:38
3  
The warning is telling you that the bookmark created by hyperref is not goin to have a line break in it. – Matthew Leingang Mar 21 '11 at 20:40
up vote 32 down vote accepted

Use \texorpdfstring; the first argument can contain (La)TeX code and the second one (text only), will be used for the bookmarks:

\section[this is a very long title I want to break manually]{\texorpdfstring{this is a very long title I\\ want to break manually}{this is a very long title I want to break manually}}

If a ToC is to be produced and the break line is not desired there, a better option is to to use the optional argument of \section (this will be used for the headers, the ToC and the bookmarks):

\section[this is a very long title I want to break manually]{this is a very long title I\\ want to break manually}
share|improve this answer
    
Using the optional argument of the \section command should be enough to suppress the warning. It is a good idea to do this anyway, as Gonzalo mentions, to avoid the line break in the printed table of contents, if you have one. – Nathan Grigg Sep 23 '11 at 18:08

Just using \\ in the .tex file is enough to break the line in the heading when compiling to dvi file. But when compiling to pdf, the line breaks also in the table of contents and it looks strange. Thus, the best solution I found was converting dvi to pdf directly.

*\section{this is a very long title \\ I want to break manually}*
share|improve this answer
2  
Welcome to TeX.sx! A tip: If you indent lines by 4 spaces or enclose words in backticks `, they'll be marked as code, as can be seen in my edit. You can also highlight the code and click the "code" button (with "{}" on it). – doncherry Oct 14 '12 at 0:10
    
Although you're right about compiling the file with latex (the different behavior is probably due to the different drivers loaded by hyperref), the OP mentioned the usage of xelatex, which produces PDF directly. – henrique Oct 14 '12 at 0:50

I recently ran into a similar issue where my section title was being split across two lines, but only one or two words were ending up on the second line. I wanted to manually insert a line break so that I could balance it better. I ended up using non-breaking spaces to force the line break to happen earlier instead:

\section{this is a very long title I want~to~break~manually}

This worked better for my table of contents as well, since the section title fit all on one line there (in the smaller font), but the non-breaking spaces forced LaTeX to split the section title more evenly across two lines in the document body.

share|improve this answer
    
Works with any LaTeX installation, avoids side effects, easy to tweak, easy to understand. – Camille Goudeseune Apr 27 at 17:38

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.