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