3 * \file src/PDFOptions.h
4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
9 * Full author contact details are available in file CREDITS.
18 #include "support/docstream.h"
26 /// Options for PDF generation
29 PDFOptions() { clear(); }
41 * A set of Acrobat bookmarks are written, in a manner similar to the
43 * bookmarks boolean true
47 * If Acrobat bookmarks are requested, include section numbers.
48 * bookmarksnumbered boolean false
50 bool bookmarksnumbered;
52 * If Acrobat bookmarks are requested, show them with all the subtrees
54 * bookmarksopen boolean false
58 * Level (\maxdimen) to which bookmarks are open
59 * bookmarksopenlevel parameter
61 string bookmarksopenlevel;
63 * Allows link text to break across lines.
64 * breaklinks boolean false
68 * The style of box around links; defaults to a box with lines of 1pt
69 * thickness, but the colorlinks option resets it to produce no border.
70 * pdfborder "0 0 1" / "0 0 0"
71 * Note that the color of link borders can be specified only as 3
72 * numbers in the range 0..1, giving an RGB color.
73 * You cannot use colors defined in TEX.
75 * We represent here only the last bit, there is no semantics in the
76 * first two. Morover the aim is not to represent the whole pdfborder,
77 * but just to deny the ugly boxes around pdf links.
81 * colorlinks boolean false
85 * Adds backlink text to the end of each item in the bibliography,
86 * as a list of section numbers.
87 * This can only work properly if there is a blank line after each
89 * backref boolean false
93 * Adds backlink text to the end of each item in the bibliography,
94 * as a list of page numbers.
95 * pagebackref boolean false
99 * Determines how the file is opening in Acrobat;
100 * the possibilities are None, UseThumbs (show thumbnails), UseOutlines
101 * (show bookmarks), and FullScreen.
102 * If no mode if explicitly chosen, but the bookmarks option is set,
103 * UseOutlines is used.
104 * pagemode text empty
106 * We currently implement only FullScreen, but all modes can be saved
107 * here, lyx format & latex writer is prepared.
108 * The only thing needed in such a case is wider Settings
109 * dialog -> PDFOptions.pagemode .
113 static const string pagemode_fullscreen;
115 * Additional parameters for hyperref given from user.
117 string quoted_options;
119 * Possible syntax check of users additional parameters here.
121 string quoted_options_get() const;
125 * Flag indicating whether user made some input into PDF preferences.
126 * We want to save options, when user decide to switch off PDF support
130 /// check for string settings
132 /// output to lyx header
133 void writeFile(std::ostream &) const;
134 /// output to tex header
135 void writeLaTeX(odocstream &) const;
136 /// read tokens from lyx header
137 string readToken(Lexer &lex, string const & token);
138 /// keep implicit hyperref settings
145 #endif // PDFOPTIONS_H