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