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