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