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