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