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