Using a custom set of XML tags inside your HTML, you can insert both custom metadata as well as instructions for how the PDF would be viewed in a PDF viewer application (subject of course to that application supporting those features).
You use the (optional) tag <pdfproperties> and within that tag you
can insert <metainfo> and <pdfpreferences>
sections as shown in the instructions below. Within the
<metainfo> tag, you can add <prop> tags
with @name, @value attribute pairs with the data you wish
to store in the PDF metadata. Anything without one of the recognized, standard PDF
names (author, title, subject,
creator, keywords) are stored in custom metadata in
the PDF.
The <pdfpreferences> section allows you to insert one or more
<pref> tags with specific @name,
@value pairs that control the way the resulting PDF is displayed
with a viewer that supports standard PDF view attributes. The support
name, @value pairs are listed below and grouped into
all the available categories:
These options let you control some general information about the generated PDF.
bookmarks - sets whether PDF bookmarks are generated or not. The default
is "false" for Cloudformatter. You can set @value to "true" if you want
bookmarks in PDF. Note that bookmarks are only generated for interpreted
hierarchical information. All h1 elements and there following
h2 elements and so on. Skipping levels will break the sequence and
the bookmarks will not be correct.
pdf-version - sets the PDF version number. The default is version 1.5
for Cloudformatter but you set @value to values like "1.3", "1.4",
"1.6" or "1.7" if you wish to change the version. Be aware thar some other features
could be disabled by setting the version too low.
compress - sets whether the PDF is compressed or not. The default is
"true" for Cloudformatter. You can set @value to "false" if you want
uncompressed PDF.
linearize - sets whether the PDF is linearized or not. The default is
"false" for Cloudformatter. You can set @value to "true" if you want to
optimize a long PDF for web view.
These options let you control how the PDF when opened appears to the end user.
view-mode - Choose from one of the following:
auto - If there are bookmarks in the document, the bookmarks pane
is displayed. Otherwise, all auxiliary panes are hidden.show-none - All auxiliary panes are hidden.show-bookmarks - The bookmarks pane is displayed.show-thumbnails - The thumbnails pane is displayed.full-screen - The document is displayed in full screen-mode.initial-zoom - Choose from one of the following:
auto - Page scaling is not specified.fit - The page is scaled to fit completely into the view port.fit-width - The page is scaled so that its width matches the width
of the view port.fit-height - The page is scaled so that its height matches the
height of the view port.### or ####% - The page is scaled by the number or
percentage specified.page-layout - Choose from one of the following:
auto - Uses settings of viewer application.single-page - Displays one page at a time.continuous - Displays pages continuously in one column.two-columns-left - Displays pages continuously in two columns, with
odd-numbered pages to the left.two-columns-right - Displays pages continuously in two columns,
with odd-numbered pages to the right.two-pages-left - Displays pages in two columns, by two pages at a
time, with odd-numbered pages to the left. two-pages-right - Displays pages in two columns, by two pages at a
time, with odd-numbered pages to the right.viewer-preferences - A comma separated list of the following
possibilities:
hide-toolbar - Hides the viewer application's tool bars when the
document is active.hide-menubar - Hides the viewer application's menu bar when the
document is active.hide-window-ui - Hides user interface elements in the document's
window (such as scroll bars and navigation controls), leaving only the
document's contents displayed.fit-window - Resizes the document's window to fit the size of the
first displayed page.center-window - Positions the document's window in the center of
the screen.display-document-title - Controls whether the window's title bar
displays the document title taken from the "title" metadata field.These options allow you to specify owner and user security in the PDF output. User-level security can inject a password to be used to open the PDF, while owner-level security can control what can be done with the PDF (like printing it or copying the data from it).
userpassword - Sets the user password that must be entered to view the
PDF. There are no options, the @value passed is the password to be
used.
ownerpassword - Sets the owner password that must be entered to enable
advanced processing of the PDF. There are no options, the @value passed
is the password to be used. An ownerpassword is used to lock down certain privledges
that an owner will grant to a recipient of the PDF. Without the owner password,
recipients can be restricted from certain things. By default they are restricted
from everything, and you can then specify what additional things you allow by using
userpriviledges.
userpriviledges - A comma separated list of the following
possibilities:
print - Enables printing the document. modify - Enables editing the document. copy - Enables copying text and images from the document to the
clipboard. annotate - Enables adding notations to the document and changing
the field values. These allow you to specify crop marks, bleeds and registration marks to be applied to the PDF.
crop-offset - specify offsets from the meaningful content on the page to
the edges of the physical media (/MediaBox entry in the PDF page dictionary). Its
value is a series of 1 to 4 length specifiers that set offsets from the edges of the
page area to the corresponding edges of the /MediaBox. Rules for expanding the value
are the same as for the padding property in CSS.
bleed - specify the bleeds — an extra space around the page area into
which the contents of the page may protrude (/BleedBox entry in the PDF page
dictionary). Its value is a series of 1 to 4 length specifiers that set offsets from
the edges of the page area to the corresponding edges of the /BleedBox. Rules for
expanding the value are the same as for the padding property in CSS.
crop-mark-width - defines line width for the crop marks, setting it to 0
disables drawing of crop marks.
bleed-mark-width - defines line width for the bleed marks, setting it to
0 disables drawing of bleed marks.
printer-mark - specify additional SVG images to be drawn in the offset
area surrounding the page (specified by crop-offset and bleed parameters). Printer
marks are clipped to the outside of the bleed rectangle. The @value is
a URL to an SVG you have. This sample has two URLs (one for a colorbar and one for a
registration mark) you can also use if you like.
The following code is what is behind this page for producing the PDF. Of course, you would only see the things supported by your PDF viewer you use. If you wish to see them all in action, then use "download" and Adobe Reader to view the PDF.
Recent changes in some browsers will not treat this XML as XML. Instead it tries (incorrectly) to not close tags. For best results, be sure to use open and close tags and not a self-closing tag.
<pdfproperties style="display:none;">
<metainfo>
<prop name="author" value="Xportability LLC"></prop>
<prop name="title"
value="Xportability Cloudformatter: Showing Custom
PDF Properties"></prop>
<prop name="subject" value="A Cloudformatter Document"></prop>
<prop name="creator" value="css2pdf@cloudformatter.com"></prop>
<prop name="keywords" value="CSS, PDF, Cloudformatter"></prop>
<prop name="custom1" value="value1"></prop>
<prop name="custom2" value="value2"></prop>
<prop name="custom3" value="value3"></prop>
<prop name="custom4" value="value4"></prop>
</metainfo>
<pdfpreferences>
<pref name="bookmarks" value="true"></pref>
<pref name="pdf-version" value="1.6"></pref>
<pref name="view-mode" value="auto"></pref>
<pref name="initial-zoom" value="fit-height"></pref>
<pref name="page-layout" value="two-columns-left"></pref>
<pref name="viewer-preferences" value="display-document-title"></pref>
<pref name="crop-offset" value="0.5in"></pref>
<pref name="crop-mark-width" value="1px"></pref>
<pref name="printer-mark"
value="http://www.cloudformatter.com/Resources/Images/registration.svg"></pref>
<pref name="printer-mark"
value="http://www.cloudformatter.com/Resources/Images/colorbar.svg"></pref>
</pdfpreferences>
</pdfproperties>
Sit enim diam et et tempor feugait ut lorem takimata illum dolor volutpat kasd sadipscing dolor amet vero ea. Et et blandit et sit magna. Erat accusam vel aliquyam sanctus et lorem sadipscing sed et erat stet vulputate qui. Lorem sanctus nonumy consetetur elitr clita labore duis eos sed sit et eirmod erat rebum justo at sanctus. Rebum stet at voluptua. Magna duis eos amet option vero clita duis vero diam stet clita. Magna eos clita. No at eirmod eirmod. Praesent no voluptua ipsum eum nulla. Diam no erat nulla at rebum ipsum sit dignissim rebum. Aliquyam vero gubergren tincidunt et ipsum amet.
Sadipscing takimata est sit stet sed. Gubergren euismod quis sit dolor eirmod stet duo ut labore dolore dolores takimata. Adipiscing est amet consequat no stet iusto sed ea vero invidunt et sed esse dolore est imperdiet nulla eirmod. Vulputate ea gubergren nulla feugiat kasd veniam elitr. Magna accusam sed et in consetetur dolor sadipscing lorem erat kasd ut enim ad vulputate delenit eos duis sadipscing. Duo nam iusto erat accumsan liber dolore sit labore et ad stet delenit diam et ipsum sea. Sit amet nulla sit sea. Diam takimata et nonumy vulputate dolores dolor ea duo takimata nobis consetetur ut ipsum voluptua.
Diam gubergren vel elit diam clita in et sit odio facilisis amet dolor nonumy iusto stet sea. Praesent sit sadipscing velit et et praesent et nulla dolor eos est no consequat aliquyam labore diam invidunt vero. Tempor amet ipsum elitr takimata nonumy dolor. Lorem vel erat nulla no sit suscipit ipsum ipsum. Voluptua clita erat accusam dolore sit tation erat clita erat ea sed ea sit velit velit. Et accusam sit consectetuer eirmod justo stet lorem et veniam diam dolor clita eirmod imperdiet aliquyam dolor. Clita nonumy dolores elitr ut lorem diam dolores accumsan ut liber tempor sed takimata lorem dolore dolor dolore justo. Tempor tincidunt luptatum accusam option et et et. Sed justo blandit. In duis luptatum magna lorem duo.
In eu nonumy sanctus ut vulputate lorem feugait magna invidunt. Clita dolores eos ut eos feugiat sadipscing dolore at clita. Blandit in ipsum kasd accusam rebum tempor et et rebum eos duo. Et voluptua elitr facilisis augue at sea duo est diam est in. Gubergren diam amet nam commodo ipsum eum eos gubergren. Sea eum et elitr et facilisis consectetuer eleifend sea ipsum laoreet lorem et.
Iusto amet lorem ea stet lorem ipsum praesent duo justo sed volutpat et aliquyam dolore in sadipscing et. Ut lorem diam labore clita sea vulputate lobortis luptatum consetetur diam. Et sit iriure erat vulputate. Mazim ea accusam quis voluptua dolore et duis no ad. Et invidunt kasd dolore lorem invidunt sadipscing sed ea ea sed eos eros sit esse diam. Amet accumsan elitr dolor diam est sit sanctus est elitr sed consequat clita facilisi. Vero in sed possim nibh takimata feugiat no autem eirmod at invidunt sit.
Gubergren eirmod sed nonummy volutpat ipsum ut sit commodo invidunt ea. Dolores consetetur consequat. Ipsum kasd eros ipsum eirmod gubergren labore amet est vel feugiat dolor. Ut justo duo eos elitr dolore sed sadipscing nisl vero dolor adipiscing consequat veniam lorem lorem. Clita duis ea. Labore vero laoreet no at labore lorem sit. Dolore odio enim ut sed dolores dolor exerci vero sit sadipscing labore wisi esse quis lorem magna ipsum.
Eos ut et augue. Magna consetetur hendrerit laoreet ipsum ipsum dolore aliquyam magna et eum. Aliquyam sed diam sit accusam ut eirmod et et esse tempor stet iriure lorem ut sed. Enim sed ullamcorper sit invidunt et eos diam nonumy eirmod dolor diam tempor. Illum accusam diam possim sit doming autem labore duo clita vulputate sed in sea nulla.
Stet sit vel augue dolor invidunt ipsum amet. Ad clita dolores dolore diam dolore et amet velit sed wisi eirmod ut ad praesent. Nostrud dolor nonumy amet aliquam ea quis sit sed ut. Et nulla sit labore feugait te et dolore. Et invidunt et nulla ea kasd ipsum eirmod sadipscing.
Eu feugiat rebum sanctus kasd eos amet duis delenit aliquam est nibh vero tempor esse hendrerit. Hendrerit vero et sit vel rebum blandit vero et odio rebum sit elit odio justo elitr. Dolor at amet sed sanctus vel no accusam dolor duo clita vero zzril et kasd ut. Magna ipsum no sed ea commodo augue dolore esse tempor lobortis sit duo ipsum invidunt elit sit hendrerit ipsum. Clita sit diam erat facilisis magna sit nam vel sea amet cum te. At amet labore dolor vel et magna sit justo ut invidunt. Amet et at. Lorem luptatum eu diam. Ad erat erat.
Ut takimata ea feugiat sit amet vulputate consectetuer et invidunt duis ipsum elitr tincidunt amet et ad. Tincidunt vulputate aliquyam voluptua vel ipsum ut et. Voluptua consectetuer diam. Est sit eum ipsum vero kasd et. Eos et vel duis eirmod rebum. Eos sea est. Dolor est vero at.
Quod et nonumy et erat. Lorem rebum ipsum doming ipsum duo et et nonumy nonumy sed. Sed volutpat et eum nulla diam no stet aliquip at aliquyam ut duis sadipscing clita sadipscing lorem. Eirmod sea sadipscing nulla sed rebum nulla praesent sadipscing tincidunt aliquip aliquyam elit ipsum. Justo commodo laoreet nulla sit takimata at kasd dolores dolor id labore. Sit no lorem aliquyam vel at amet et in tation nonumy justo labore takimata ipsum ipsum sadipscing accusam amet. Sea gubergren feugait at vel rebum ullamcorper sea dolor tempor facilisis illum. Doming accusam labore. At tempor eos placerat ullamcorper consectetuer diam velit kasd dolores sit iusto. Eos congue duis diam sanctus tempor et in nobis et eirmod.
Consequat dolor in. Takimata invidunt dignissim diam dolor dolores et accusam et sed blandit sadipscing. Dolor suscipit est in ipsum ea et nulla in ut duis eirmod. Ut lorem nisl amet. Consetetur dolor lorem sadipscing rebum dolores option et diam nonummy erat ex hendrerit elit sit ea eirmod dolore. Aliquip magna eu justo aliquyam dolores labore. Eirmod diam vero. Tempor tempor facilisis euismod amet iriure lorem facer. Diam erat ut te sed invidunt eum amet exerci no at dolore. Dolore justo sit vel voluptua at. Dolor te erat lorem sed dolore feugiat stet no dolores lorem amet kasd lorem dolore dolore ipsum.
Magna gubergren et sit justo. Ea vel est dolore aliquyam wisi justo sed gubergren. Lorem ipsum ipsum vel sea est dolore sed vel eos. Kasd dolore hendrerit ea ipsum est. Amet est diam. Voluptua et exerci wisi voluptua dolore erat ut ut dolores amet feugait sit minim lorem.
At erat erat dolor. Tempor est rebum labore gubergren dolore tation et. Ut minim sit voluptua sed no clita erat amet kasd vero nonumy stet consetetur sed. Molestie dolore magna est justo at ipsum sit illum eu nisl sit quis voluptua dolor gubergren. Wisi no magna clita ipsum accusam rebum in vel vel duo sed et. Dolor clita takimata. Labore consetetur sed ipsum iriure ea. Ad ea et kasd amet ipsum ea ea. Erat aliquyam feugiat dolore ipsum kasd dolores vel. Sed magna duo sanctus lobortis sed dolore lorem lorem stet ea ut est erat amet tation. Euismod ad nulla sit aliquip dolor dolor justo eum stet aliquam at vero mazim diam sanctus.
Labore aliquyam lobortis facilisi placerat erat et ea dolor. Dolore takimata dolore dolor quod iusto invidunt et no. Lobortis sed et invidunt diam et nulla erat aliquyam diam tempor amet aliquyam erat labore justo ipsum. Accusam nihil augue dolore sit iriure. Nonumy dolor sed eleifend dolor. Et et et magna vero et molestie. Facilisis et eirmod ut eum ipsum. Nostrud nobis illum at accusam. Sit facilisis ipsum est gubergren vel lorem eirmod autem consequat quis sed wisi feugiat elitr rebum dolor sed ut. Lorem enim sed feugait sit sanctus. Et amet amet sed voluptua aliquyam qui eos nostrud vel dolor sit iusto aliquam elitr euismod.
Takimata clita dolores facilisis commodo ex lorem nonumy diam lorem invidunt. Eirmod est lorem dolor dolore vero dolor elitr vulputate ipsum rebum. Consequat nihil labore magna dolor diam kasd ut tempor dolores sadipscing consetetur. Tempor vel dolore at et feugait qui stet sea stet vulputate te. Facer et diam te sanctus gubergren ipsum diam rebum sit et. Sadipscing rebum eirmod sit at iusto nulla gubergren et amet aliquyam ea labore enim ullamcorper aliquyam eirmod.
Ad esse ipsum tempor sit nonumy. Kasd consectetuer vel eirmod vero amet amet. Exerci erat aliquyam invidunt. Sed gubergren sit exerci iriure ut. Diam takimata eos sit nonumy in. Adipiscing aliquam vero feugait in clita dolor iriure ipsum quis iriure accusam ut et eos sanctus voluptua. Dolor voluptua feugait nisl in voluptua sea kasd at no esse gubergren amet et.
Amet ut labore iusto eirmod vero gubergren stet. Suscipit magna diam. Luptatum amet sit. Odio dolore exerci nulla erat magna ipsum amet dolore velit et eos tempor labore clita dolor at. Dolor praesent odio diam quis esse no feugait dolore erat justo kasd et magna est sit elitr wisi elitr. Et lorem at tempor accusam ea sadipscing facer voluptua volutpat justo aliquam quod consectetuer ipsum dolore. Consetetur nisl diam stet ipsum ipsum et minim et ea.
Sed dolore ea no diam sadipscing dolore tincidunt amet accusam clita elitr. Wisi et takimata ea tempor nonumy et. Lorem dolor sea et nonumy amet. Sanctus takimata justo molestie at lorem labore gubergren laoreet ad ipsum facilisi liber sanctus voluptua. Iriure duo vero ut sit dolor ut ut at qui minim. Facilisis facilisi diam dolor et diam aliquam vero et sadipscing dolores.
Tempor molestie sit labore et imperdiet rebum at sadipscing dolore. Dolore duo suscipit sit sanctus. Minim nisl takimata. Ea ea tempor duo amet sit ipsum et ipsum. Dolor et invidunt option takimata eirmod justo elitr takimata et diam est no diam ipsum ut. Gubergren erat lobortis aliquyam erat magna. Est et rebum ea.
Nulla amet diam amet vel erat dolore est nonumy in wisi dignissim ea in. No accumsan eros duis sadipscing dolores elitr. Praesent sanctus sanctus facilisi dolore feugait ut aliquam tempor voluptua. Et ex et rebum vel. Voluptua diam et magna eirmod sed facilisis. Dolor sit dolore et labore suscipit clita ipsum ea.
Diam diam wisi magna accusam et kasd autem. Accusam ipsum dolor amet amet elitr amet facer ut. At sed diam et dolor stet ipsum dolor lorem esse dolor. Vel nibh lorem takimata ut nulla minim dolor sea sed et at ipsum. Dolor accusam kasd elitr. At dolore labore aliquyam. Stet voluptua odio dolores duo sea eros gubergren in.
Tempor possim tempor sea sadipscing vero lobortis facer nobis. Ipsum magna rebum eum dolore invidunt clita dolore dolore ea ut consequat kasd consetetur aliquyam accusam. Labore sit justo eos aliquip et lorem lorem sit eos et dolore et eum consetetur consequat. Gubergren at sea accusam ut et delenit dolores et vel sit velit feugiat. Erat accusam exerci et. Dolore sanctus magna sed ipsum augue duis feugiat sed iriure sadipscing nisl sed. Feugait et est diam kasd lorem clita lorem vero sit magna dolor gubergren et eu ipsum kasd est sea. Ea erat takimata hendrerit nostrud sea est at velit aliquam nulla stet. Velit illum dolor takimata ut labore eirmod sed sea dolore ut dolores dolor lorem ut ipsum takimata et vulputate. Duo ex nulla no stet eos ipsum diam lorem tempor amet elitr ea. Lorem eirmod ut kasd odio.
Amet est ipsum invidunt at takimata assum quis eos aliquyam lorem nonumy praesent sadipscing accusam est vel amet. Aliquyam consetetur vero vero stet sadipscing dolores lorem labore hendrerit sit sed erat dolor at mazim congue dolore. Liber duis rebum ipsum magna takimata dolor. Nobis dolor duo labore labore accusam magna ullamcorper quis. Magna cum dolor no no est at ipsum nonumy iriure elitr. Erat facer et dolore nonumy dolore et sit in ipsum ea facer molestie. Labore est labore ipsum kasd vero nostrud et duo ipsum nam. Accumsan sed eos gubergren dolores vero no takimata consetetur in clita dolores dolore labore quod sit hendrerit.
Et at magna odio ipsum nam ut nonummy invidunt eu consequat eos sea amet tincidunt duis iusto. Dolor justo diam sed tempor consetetur elitr consetetur et eirmod dolore augue sit rebum ipsum. Aliquyam et amet takimata accusam ipsum clita dolor erat no vel tempor ipsum nonumy eos ullamcorper tempor sed. Id dolor amet ad rebum sed tincidunt esse dolores justo sanctus suscipit. Ut et ea suscipit kasd ea dolor commodo at magna dolore dolores duis suscipit sea sadipscing. Sanctus voluptua labore lorem sit. Duis ut suscipit.
Ea stet ullamcorper eos ipsum congue ipsum ipsum in dolores te et no gubergren. Amet ea rebum duo at magna amet qui rebum eu et stet sanctus est luptatum dolore. Sit sed et sed nam sea rebum ipsum ipsum eirmod labore magna aliquyam est ut. Elitr erat rebum accumsan. Eirmod diam et in eum clita eleifend ut nulla ipsum. Ut lorem justo duo. Takimata stet diam amet et vulputate eu dolore esse commodo. Rebum justo rebum voluptua et elitr esse ex sit aliquyam ut no. Dolore augue aliquam exerci et sit voluptua. Aliquyam dolores ea adipiscing eirmod.
Luptatum sadipscing iriure diam consetetur invidunt velit amet dolores iusto mazim. Minim sit dolores et sed ipsum aliquyam vulputate. Dolores at est mazim laoreet velit sea dolor clita diam dolore duo nonumy et. Iusto amet ea dolor sit. Et invidunt dolore.
Et et dolor dolore magna takimata est diam autem duo tempor luptatum diam ea. Sed laoreet autem gubergren sed kasd justo no. Amet vulputate consequat placerat diam delenit nonumy aliquam diam. Tation est sit ut amet ut clita erat lorem vulputate ut consequat eum. Tempor lorem lorem no at at dolores dolor stet voluptua luptatum sed diam. Et ut erat et facilisis. Sea takimata eu diam. Dolor ea et sit ipsum vero volutpat sed nonumy. Sed nulla stet ea et ad kasd elitr nulla molestie duo justo lorem erat.