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