When accessing the edit view in Optimizely Content Management System (CMS), you can select a PDF document from a media folder, to preview its content.
In the _PdfPreview_ package, there is a class named `
PdfFile` which handles uploaded files with the .pdf extension.
No additional license fee for the add-on.
An Optimizely Content Management System (CMS) website with the _EPiServer.PdfPreview_ package installed.
See [Add-ons platform compatibility](🔗) for package and version information.
Installed through [NuGet](🔗).
PDF Preview is useful for websites where you manage multiple content items in PDF format.
## User scenarios
These are the typical user scenarios for adding PDF preview to your solution.
### The system does not have a model for handling PDF files
If the system does not have a model for handling PDF files, the default `
PdfFile` model provided by the package is used. Editors can now preview PDF files in edit view without any extra steps.
### The system already has a model for handling PDF files
By default, the `
ContentMediaResolver` class from CMS Core gets the first matching media implementation type registered for an extension. If there is an existing type registered for “pdf”, the `
PdfFile` media implementation in the Optimizely package is used but in this case, the existing type should be chosen in this case.
To change this default behavior, a media resolver class named `
PdfContentMediaResolver` is used to ignore the `
PdfFile` type in the Optimizely package and thus, the existing registered media type is the candidate.
PdfContentMediaResolver` inherits `
ContentMediaResolver` and overrides the Type `
GetFirstMatching(string extension)` method to handle the business logic above.
To turn on the PDF preview, the PDF media model must implement the `
IPdfFile` interface. For example:
Due to limitations, after installing the add-on, you can preview only newly uploaded PDFs. You must upload existing PDFs again to be previewed.