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