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