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