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