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