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