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