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