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