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