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