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