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