PDF Viewer Macro (Pro)

Last modified by Sorin Chiuchiu on 2026/07/16 15:04

PDF Viewer Macro (Pro)

Display attached PDF files or PDFs from external URLs inside XWiki pages. Use the tabbed layout to show multiple PDF files in the same XWiki page. The app can be purchased individually or part of the XWiki Pro package. Try it free.

CategoryMacro
Active Installs119
Rating
0 Votes
Support
LicenseGNU Lesser General Public License 2.1
Minimal XWiki version supportedXWiki 15.10
SourcesIssues
Table of contents

The PDF Pro Viewer Macro allows users to load and view PDF files inside a wiki page. The Viewer supports a double full screen mode:

  • first going full screen in your browser
  • then going full screen on your computer if your browser supports that mode.

The PDF location could be the current wiki page, another wiki page or an external URL.

PDFViewer.png

External Resources

 

Topics

Parameters

Below are described the parameters of the PDF Viewer Macro that need be used in order to define the way a PDF file is displayed in a wiki page.

NamePretty nameMandatory?DefaultDescription
asauthorDelegate my view rightcancel0

If this value is true (or 1 or yes) and the viewing user has no access to the document containing the PDF file, the PDF file could still be viewed on behalf of your view right (as long as you have view right on the containing document).

This parameter is helpful when you want to add to a page B a macro pointing to the PDF from another page A, that is protected for some users. Note that the view right is delegated only if the last person that saved page B had indeed view rights on page A. Also, this will not alter the view right on page A.

documentDocumentcancelcurrent documentReference to the XWiki document to which the file is attached (e.g. xwiki:Path.To.Document). The xwiki: part can be ignored if the file is located in the current wiki). If file argument is an absolute URL, this argument is ignored.
fileFileacceptN/AName or the absolute URL of the PDF file.
heightHeightcancel1000The viewer height, accepts values in pixels or in percentage.
widthWidthcancel100%

The viewer width, accepts values in pixels or in percentage.

fileFromExternalUrlFile from external URLcancelN/A

An URL to an external PDF file. Multiple links can be inserted, separated by commas. When using external domains to display a PDF file, ensure that you have appended the domain of your wiki and/or subwiki to the Trusted Origins field in the Administration section.

Using the macro from WYSIWYG editor

Edit a wiki page in WYSIWYG mode and look in the tool bar for the icon (XWiki Macro), search for PDF Viewer Macro and fill in the parameters values. 

Using the macro from wiki editor (code)

PDF file attached to a wiki page

To note that when using this option to display a PDF on a wiki page, the URL for the PDF will be generated using the XWiki API which can handle different setups for the wiki (path based, domain based, alias updates, etc).

{{pdfviewer file="gsoc.pdf" document="dev:GoogleSummerOfCode.WebHome" asauthor="1" height="900" width="80%"/}}

PDF file attached to a terminal wiki page

When having a PDF file attached to a terminal page, the syntax is slightly different, leaving out the "WebHome" mention.

{{pdfviewer file="gsoc.pdf" document="dev:GoogleSummerOfCode" asauthor="1" height="900" width="80%"/}}

PDF accessed from an external resource via URL

When using an absolute/explicit URL to display the PDF on a wiki page, keep in mind that you might need to update the URL if the alias of the source where the PDF is located will be changed. After manually adding a URL to the file field, you must also select the popup in the picker. Otherwise the inserted text will not be saved.

Information

If the absolute URL is from an external domain, you might encounter an error which is addressed in the Trusted Origins subtitle.

You can either add the URL in the file field, or use the dedicated  File from external URL field:

{{pdfviewer fileFromExternalUrl="http://dev.xwiki.org/xwiki/bin/download/GoogleSummerOfCode/WebHome/gsoc.pdf" /}}
{{pdfviewer file="http://dev.xwiki.org/xwiki/bin/download/GoogleSummerOfCode/WebHome/gsoc.pdf" /}}

PDF file reference from a wiki page

You can also use a direct reference to a pdf file from a wiki page, without having to fill in the document field.

{{pdfviewer file="GoogleSummerOfCode.WebHome@gsoc.pdf" asauthor="1" height="900" width="80%"/}}

In case of a terminal page, the syntax is slightly different, leaving out the "WebHome" mention.

viewPdf.png

Display multiple PDF files in the same page using a tab system layout

Add more PDF files, separated by comma.

{{pdfviewer file="TLSanalysis.pdf,H-MSD2018.pdf"/}}

editMacro.png

multiplePdfFiles.png

Manually register mime type for ECMAScript modules (.mjs)

PDF Viewer Macro (Pro) is based on pdf.js which uses ECMAScript modules. This requires the registration of the mime type for ECMAScript modules (.mjs), which should occur automatically. If the automatic registration fails, manual actions are required.

The administrator should manually add the custom-mimetypes.xml file inside the XWiki WAR at the path: WEB-INF/classes/org/apache/tika/mime/.

Administration Page

Trusted Origins

If you use URLs of PDFs from external domains, you might encounter an error with the following message `Message: file origin does not match viewer's`. 1712216925490-172.png

This error appears, as the message suggests, because domain of the viewer is different from the domain where the pdf is located.

To avoid this problem, you should append the domain of you wiki and/or subwiki to the `Trusted Origins` field of the Administration Section.

1712217665229-690.png

Information

Note that this is not enough as it is in order to display PDF's from different origins. It only provides a mechanism to define some trusted origin to bypass the pdfjs check that throws origin error.
In addition, each XWiki instance owner is responsible to configure the CORS mechanism, if needed.

With Credentials

If you are trying to access pdf files located on servers that need authentication and your cookies contain the validation data, you will need to set the `With Credentials` field to yes. This way, the cookies will be forwarded when making a request to the said pdf file.

Installation Steps

This paid extensions requires XWiki 15.10 or above. In order to install the extension, follow the next steps inside your XWiki instance (on cloud or on premise).

Navigate to the Extension Manager

In the Applications Panel click on "More Applications..." and then "Install new applications...". Alternatively navigate directly to the Administration and select the "Extensions" section.

step1.png

Install the Extension

Search for the extension you wish to install and use the Install button to install it.

step2.png

Get a License

Navigate to the "Licenses" section of the Administration, fill your details, look for the extension you just installed in the live table and click the buttons to get a trial license or to buy a license.

step3.png

Install the License

If you have selected a trial license then you're good and there's nothing else to do. Your trial license is automatically installed.

However if you've selected to buy a license you'll be redirected to a page to perform the payment. At the end you need to come back to the "Licenses" administration section and click on the "Check for Updates" button. This will download and apply the license you bought.

Use the Extension

Start using the Extension! Refer to the extension's documentation to know how to use it.

Installing Paid Apps on Subwikis

If you want to install an application on the whole farm (main wiki + subwikis), you can do so directly from the main wiki’s Extension Manager, as seen below:

step4.png

Extensions can also be installed only on a particular subwiki by global admins. Subwiki admins will not be able to install these extensions due to their limited rights.

Options

The price is per year and varies depending on the support level and the number of users.

Support / Users 10 25 50 100 250
Basic
PDF Viewer Macro (Pro) is part of the XWiki Pro package. By purchasing this package, you will benefit from more extensions at a better price. Check the full offer in XWiki Pro! The PDF Viewer Macro (Pro) can be purchased individually only via online order (credit card payment), following the “How to Buy” procedure described below. The application is part of the XWiki Pro package, which can be purchased through online order for up to 1000 users, or through manual order (bank transfer payment) by contacting sales@xwiki.com.

Benefits

What do you get when you purchase an XWiki extension?

1/3 years license

By purchasing an XWiki extension license, you'll benefit from it during one or three years, depending on the chosen engagement period.

Free updates

You benefit from all the extension updates during one year. You are always up to date.

Support included

If you are facing an issue, you can reach the XWiki support. Our team is always available to help.

How to Buy

To buy, install this extension from inside your XWiki instance and follow the instructions.

Release notes

Extension details

Information

This information is only displayed to Administrators. Your users can't see this tab.

License

  • GNU Lesser General Public License 2.1

Sources

Issues

Type

  • xar

Developed by

Compatibility

  • Requires XWiki 15.10 or above.
Success

Installable with the Extension Manager

Dependencies

  • org.webjars:requirejs 2.3.6
  • org.webjars:jquery 3.7.1
  • com.xwiki.licensing:application-licensing-licensor-api 1.32.3
  • com.xwiki.pdfviewer:macro-pdfviewer-api 2.7.3