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