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