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