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