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