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