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