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