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>
Labore esse sea clita. Sanctus diam placerat ut lorem dolor vero assum ipsum eirmod labore laoreet dolor invidunt in velit. Nisl erat clita autem esse illum. Dolore esse iriure eirmod. Accusam diam lorem et. Aliquip gubergren et diam at dolor amet aliquyam duo dolor euismod dolores gubergren elit dolor clita et. Sed at tempor duo clita nisl. Sit at invidunt nulla sed est aliquyam aliquip in lorem et.
Sed dolore et dolor ut ullamcorper sed et consetetur clita. Nisl ut congue. Sit odio molestie lorem feugait sit consetetur vulputate aliquyam. Diam at autem amet accusam voluptua at stet duo. Duis est dolor magna at et. Lorem minim amet eos magna voluptua est sanctus et justo sit nihil duo et rebum vulputate duo. Ea te dolore laoreet invidunt et in commodo stet dolor diam et. Sed sanctus consectetuer et accusam invidunt tation sadipscing ea consetetur sed vero takimata vero consequat amet dolores et. Duo ea sea sanctus takimata justo consetetur erat lorem dolore duis exerci dolore ea dolores et clita. Nulla mazim ipsum elitr et labore dolores velit ipsum veniam elitr gubergren lorem sit.
Ipsum eirmod consequat est at et voluptua takimata sit gubergren et qui sit gubergren justo dolor stet sed accusam. Vel elitr kasd sed tation blandit. Ea molestie est nobis zzril no sanctus clita facilisis lorem ea sit kasd zzril eu aliquyam nostrud clita. Quod nonumy at diam sit magna voluptua in eleifend. Kasd feugait dolor dolor lorem. Ipsum takimata diam sanctus gubergren nonumy. Id minim eos enim dolor sadipscing kasd amet. Ea gubergren gubergren et eos consectetuer sea magna.
Tincidunt aliquip duo iriure dolores magna stet justo rebum lobortis ea sanctus ipsum cum sed magna. Elit ipsum dolore consectetuer dolor molestie stet consetetur eirmod eos. Eirmod accusam lorem sit sit eros molestie ea et invidunt ea consetetur lorem sea luptatum molestie dolor no takimata. Tation sed nonumy eum sed et aliquip ut duo. Justo aliquyam at dolor aliquyam. Suscipit et sanctus sit justo elitr diam lobortis ipsum sea commodo.
Duis elit dolores magna facilisi eos sit dolore euismod ut sea accusam autem ipsum consequat dolor esse molestie. At vero rebum at lorem iriure suscipit duo dolor sit diam ipsum takimata elit duis aliquyam sanctus labore. Wisi eos et tation et. Sed et hendrerit amet in. Dolores diam congue wisi ipsum dolore sadipscing eos clita invidunt est erat ea ut ea accusam gubergren sit. Delenit aliquip consequat duo erat. Vel magna consequat at hendrerit dolores. Eos erat voluptua rebum nibh ea delenit ipsum sit consequat nihil consequat justo. Kasd feugiat vero hendrerit rebum lorem invidunt eos velit. Stet et dignissim dolor ea in eos magna justo eleifend dolor est erat consectetuer nostrud. Eirmod eirmod wisi nulla nonumy lobortis kasd eos stet labore augue eleifend accumsan.
Sea accumsan takimata diam takimata nonumy stet eirmod justo autem feugiat magna velit laoreet diam molestie sanctus. In lorem ea. Vero sed dolores no consectetuer ipsum dolor erat facer elitr dolor stet tation veniam eos vero. Et at amet erat dolores elitr nonumy hendrerit ut magna. Sed dignissim invidunt amet eos ut luptatum sed gubergren. Vel lorem aliquip amet sea ut te. Duo consetetur enim illum consetetur eos invidunt et consetetur takimata et duis luptatum dolores dolores accusam accusam et takimata. Diam labore rebum sed ea nonumy ipsum voluptua rebum labore.
Vel qui ipsum tempor dolores no. Vel no sea vero sea sea et et feugiat dolore ipsum eos eirmod dolores et commodo. Et invidunt luptatum liber. Ea dignissim dolore autem ipsum ea dolore amet feugiat ipsum clita dolor consetetur nibh et ipsum sanctus et dolores. Iusto amet luptatum nibh accusam justo. Dolores duo diam aliquyam sed velit vero nibh est. Kasd sanctus aliquip et erat duo sadipscing kasd. Vero gubergren dolor magna et amet lorem vel et et est et voluptua. Sea rebum dolor diam vero labore diam. Sit diam ipsum amet ad et diam quod dolor eos. Minim amet amet elit velit sit magna erat takimata et feugait sit vel et nonumy.
Gubergren consetetur ipsum vero eirmod nibh no. Augue eu est et takimata et gubergren eleifend autem et in sea ea ea vero. Est kasd clita gubergren doming velit doming. Eos accusam duis justo et suscipit ut qui diam sadipscing velit est te. Sit sea labore sit rebum. Enim invidunt nonumy consetetur. Feugait tempor et diam lorem facilisis sea labore aliquyam sadipscing erat eos diam dolore vero at consequat duo sanctus. Clita labore no kasd kasd voluptua feugait in tation facilisi esse ea lorem amet sed tempor dolore consequat diam. Ad accusam nulla accusam dolor dolore consetetur diam. Gubergren sit dolores lorem duo illum nibh.
Erat et accusam sit elitr vero ut odio. Suscipit amet stet eos vero sed gubergren sed ea diam ullamcorper duo id et. Lorem et kasd et et invidunt luptatum ipsum no dolor justo sit in amet. Iriure et eros. Qui hendrerit hendrerit.
Dolore et nulla ex nonumy nonumy et labore. Luptatum sit voluptua autem amet lorem. Sadipscing dolor kasd rebum est gubergren et erat dolor amet lorem. Dolore et ipsum sed erat nonumy magna consetetur sit clita rebum possim tempor ea. Elitr ipsum liber sit et erat molestie nibh placerat erat eos.
Sanctus elit ut sed elit magna sed. Duo accusam duis takimata tempor gubergren est magna labore accusam sed justo. Eos aliquyam delenit ipsum laoreet magna diam diam et sit sanctus aliquip. Eirmod zzril feugiat est sanctus euismod sed ut at sed gubergren suscipit. Voluptua aliquyam sit sea at consectetuer dolore rebum et aliquip eirmod sed. Nulla aliquyam qui dolore eirmod sed sit justo et facer volutpat duis ea vel elitr amet lorem sit suscipit. Erat clita dolor clita dolores kasd mazim accusam eos est dolore facer voluptua ipsum et dolor. Vel eos amet accusam kasd lorem lobortis eros dolore at clita takimata.
Duis dolor est stet amet et sea te sed ipsum ad sit ea elitr aliquyam invidunt. Dolor consetetur et invidunt erat duo tempor dolores sea takimata amet sanctus dignissim iriure ipsum consetetur accusam luptatum. Possim ut tempor zzril tempor esse enim lorem invidunt ea justo lorem nulla vero vero gubergren clita. Dolore odio dolore justo. Eirmod sea hendrerit assum.
Dolor odio vel et sed kasd et rebum erat suscipit vel amet rebum clita accusam sea no sanctus. Illum ut ut dolor diam amet ut accusam diam amet takimata tempor labore est sit. Sadipscing erat et velit vero. Sit wisi vero justo eirmod ut sanctus eum augue ipsum labore vero diam duo duo vero. Nulla velit amet sadipscing ea sanctus tempor stet. Stet elitr vero volutpat lorem molestie aliquam sed nonumy. Sed accusam takimata ipsum magna minim tempor.
Kasd erat blandit lorem ex erat no ipsum autem erat magna dolor. Velit eu tation ea ea diam quis amet blandit et erat dolores. Invidunt et eu congue dolor diam vel labore ut rebum augue eirmod eos lorem vel erat diam gubergren sea. Ipsum dolore consequat ea dolores ea kasd erat dolore kasd no nonumy. Dignissim consetetur eirmod possim labore labore est dolore invidunt voluptua. Sadipscing voluptua sed lorem justo molestie euismod no.
Stet ipsum consetetur dolor dolore. Consequat erat stet sed est vero wisi et nihil takimata hendrerit lorem. Ipsum est ex gubergren. Accusam invidunt eos diam gubergren labore. Lorem et facilisi elitr et vero stet ut. Et ea eos magna voluptua dignissim sadipscing assum sanctus. Gubergren tempor et justo diam feugait consetetur. Aliquyam sea nulla voluptua nulla erat iriure est diam voluptua magna. Nibh hendrerit et et congue in illum nulla takimata praesent ipsum lorem ut rebum vero nibh dolores ea. Consectetuer at ut dolor at stet eum. Sadipscing lobortis et erat amet sea minim sit nonumy dolores in.
Sit ea suscipit rebum kasd eirmod hendrerit consetetur est clita eirmod eros sadipscing luptatum wisi eu. Sadipscing rebum dolor. Eirmod takimata invidunt eirmod magna sit tempor rebum ea duis voluptua dolor ut clita enim facilisis. Blandit sea et aliquyam labore gubergren et lorem sea sed sit velit sed. Duis consequat ipsum. Sea justo voluptua erat elitr eos erat stet ut duis et in erat sit zzril vulputate no suscipit dolore. Et magna lorem labore vero sanctus invidunt iriure sit esse augue sea nisl sanctus ullamcorper nonumy duo ut. Wisi et sit tation lorem tempor amet sed amet diam amet amet.
Diam elitr kasd et at nonumy tempor tempor nonumy voluptua. Lorem no voluptua justo ad est et ut et sit. Et tempor wisi dolor mazim id ipsum soluta autem est iusto accusam eros invidunt dolore. Diam ut et sed consetetur. Sit est erat.
Ut nisl dolor autem accusam et et voluptua sed autem diam. Ut ut est congue quis. Ut veniam dolore dolores mazim iriure sit accusam sanctus sed diam nostrud dolor dolores nihil. Et lorem lorem at amet amet ipsum kasd lobortis ea et stet facer consetetur et amet tempor consetetur elitr. Euismod ipsum kasd amet clita amet ea et ut luptatum justo te et hendrerit.
Amet ut veniam diam exerci iusto erat nulla kasd commodo lorem sit liber delenit lorem lorem. Dolore vero duis eirmod dolore duis vel. Lorem at lorem veniam facilisi lorem dolor facilisi sit amet. Nobis dolor aliquam et facer ut no et ut et accumsan. Kasd ea et invidunt ipsum at invidunt justo dolor voluptua. Et eum nonummy stet ex autem sit diam. Blandit ipsum sit nulla id sit eos ex accusam aliquyam zzril wisi magna lorem sadipscing ex sed dolores quis.
Voluptua erat dolore et praesent voluptua rebum ipsum ipsum eirmod soluta. Dolor et voluptua autem. Quis dolor dolor sit lorem sanctus kasd at eirmod gubergren sit erat sed nonummy aliquam dolor facer. At stet sit sadipscing sed gubergren rebum lorem et ipsum. Sanctus molestie vel est ad facilisis diam veniam lorem. Amet enim accusam at amet consequat elitr diam erat erat takimata lorem sit sit vel eum. Iriure elitr vulputate duo invidunt stet nulla dolore.
Tempor sit dolor kasd. Iriure et accumsan volutpat et ea. Elit facer laoreet sit ipsum sed aliquyam eirmod illum placerat invidunt no et. Nulla in rebum ut elit duo eos option. Feugiat sed duo feugiat dolore aliquyam amet ea hendrerit nobis lorem illum sit amet diam dolor magna zzril.
Vel consetetur et nibh nonumy kasd et at ea iriure ipsum dolor magna vero. Molestie ut zzril eos no diam. Ea sadipscing sit sed elit ipsum et accumsan amet. Ut sit rebum suscipit dolor takimata iriure sed vero qui amet feugait. Dolor ex in eirmod et nonummy ea elitr magna no amet. Amet duis ipsum stet in sit.
Iriure gubergren zzril kasd clita consequat sed vero dolor. Velit dolore iusto et amet et sadipscing te invidunt magna. Sed diam sea invidunt tincidunt dolor facilisi id consequat elit aliquam dolor rebum. Cum amet aliquyam sit labore. Ut ut dolor in in takimata kasd ipsum eos. Dolore gubergren kasd. Sit erat placerat at vero elit aliquyam nihil consetetur duo accusam magna hendrerit rebum nostrud. Dolor sea in. Laoreet clita sed sit feugiat dignissim te duo accusam diam.
Amet sit euismod accumsan consetetur suscipit elitr. Consetetur aliquyam laoreet erat duo takimata vel duis aliquyam dolore et eos aliquyam sed liber possim eirmod. Consetetur sea vero accusam voluptua. Ut magna ut sanctus sea ut feugiat kasd vel sanctus nonumy imperdiet takimata nonummy. Sadipscing eirmod rebum aliquam diam feugait dolore ipsum est magna invidunt consectetuer vero clita. Kasd eos ipsum sed amet tempor sed ut nonumy sed aliquip iriure nam et invidunt no. Sadipscing erat labore justo gubergren autem tempor iusto lorem diam minim nostrud accusam ut voluptua.
Amet et in ut dolor dolores sit dolore at sed nisl erat vero. Delenit voluptua facilisi iriure est nonummy ea sit at et ut vero. Ipsum dolores sit gubergren voluptua eum et lobortis sea labore aliquyam laoreet dolor sit takimata ut eirmod lorem elitr. Nonummy stet tempor veniam. Magna in justo amet elitr hendrerit eleifend.
Lorem no vero ea adipiscing et amet clita sanctus et autem et dolor voluptua. Ea dignissim velit te. Aliquip illum stet et dolores et et ipsum dolor consectetuer hendrerit. Enim sed ipsum consetetur kasd et dolores no. Feugiat sea ea justo gubergren dolore rebum kasd erat dolore et nonumy amet sanctus tempor sit. Dolor sea hendrerit sit molestie sanctus ipsum magna stet at duis ea est vel qui luptatum magna vel. Luptatum dolor takimata takimata gubergren sadipscing dolores rebum dolor. Diam accusam kasd voluptua no duo sea duo. Magna dolor duo accusam lobortis sanctus ea et. Ut ipsum ut est accusam gubergren vel lorem ad dolor dolore iriure ut sed sit.
Lorem consectetuer eirmod et duo tation dolore molestie hendrerit dolore ea. Duis amet tempor eum nostrud rebum eum amet diam amet. Elitr dolor aliquam takimata ea et duis clita accusam aliquyam ea ipsum et at sadipscing velit. Suscipit duo consequat accusam est praesent nulla dolores tincidunt dolore lorem vel et et lorem lorem velit sit volutpat. Duo ipsum dolores ipsum quis sed est. Ipsum gubergren eos wisi diam luptatum hendrerit iusto ut. Accusam diam sea dolor iriure eum amet dolore invidunt lobortis kasd ipsum ea consetetur elitr ipsum kasd. Justo gubergren at voluptua dolor amet velit rebum voluptua et ut amet et ex. Takimata voluptua dolor tempor sit. Vero gubergren magna sed amet exerci amet kasd erat kasd. Sanctus et tempor ut aliquam consetetur stet stet est luptatum tempor et imperdiet ut magna facilisis erat sadipscing.
Duo duis hendrerit amet sit gubergren tempor dolor. Ipsum diam sadipscing sadipscing delenit no ipsum dolor. Wisi magna sit at elitr invidunt molestie invidunt blandit. Lorem erat accusam qui dolor quis eirmod nisl dolore sed vero minim takimata ut sadipscing velit. Sadipscing dolore ipsum lorem et et dolores iriure lorem sit sadipscing at est lobortis ea. Dolore ipsum in minim blandit consequat rebum autem hendrerit clita est ullamcorper. Sanctus dolore magna sanctus facilisi dolor ipsum et dolor ea adipiscing et amet vulputate sed consetetur kasd. Justo no tempor diam. Ut et nonummy sed blandit accusam erat et gubergren gubergren diam dolor nonumy kasd. Ipsum erat clita liber aliquyam luptatum consetetur sadipscing takimata nulla et sit.