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