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