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