Try to improve the supported browsers documentation

Jonas Jenwald 2022-09-23 10:59:31 +02:00
parent 9825973b9a
commit c9d687bee4

@ -32,25 +32,43 @@ You can use raw binary data to open a PDF document: use Uint8Array instead of UR
Not by default, but it is possible. PDF.js runs with the same permissions as any other JavaScript code, which means it cannot do cross origin requests (see [Same origin policy](http://en.wikipedia.org/wiki/Same_origin_policy) and [an example](https://gist.github.com/3452072)). There are some possible ways to get around this such as using [CORS](http://enable-cors.org/) (see also [unsafe headers issue](https://github.com/mozilla/pdf.js/issues/3150#issuecomment-17582371) and [Access-Control-Expose-Headers issue](https://github.com/mozilla/pdf.js/issues/4530)) or setting up a proxy on your server that will feed PDF.js the PDF file (example: https://github.com/mozilla/pdf.js/issues/1000#issuecomment-133756244). Please notice that generic/demo viewer blocks this functionality if deployed not on mozilla.github.io domain to avoid content spoofing (see https://github.com/mozilla/pdf.js/pull/6916).
<a name="faq-support"></a>
## Which browsers are supported?
From version `2.4.456` on we produce a non-translated/non-polyfilled build for modern browsers by default. However, we also provide the translated/polyfilled build for older browsers in a separate bundle (with the `-legacy-dist.zip` suffix).
## Which browsers/environments are supported?
By default we produce a non-translated/non-polyfilled build, intended for *the latest* browsers. However, we also provide a translated/polyfilled build for older browsers in a separate bundle (with a `legacy` suffix).
The objective is to support all HTML5 compliant browsers, but since feature support varies per browser/version our support for all PDF features varies as well. In general, the support is below. If no version is indicated, then the latest desktop/mobile versions are intended.
The objective is to support all HTML5 compliant browsers, but since feature support varies per browser/version our support for all PDF features varies as well. In general, the support is listed below. If no version is indicated, then *the latest* desktop/mobile versions are implied.
### Modern build
<table>
<tr><th>Browser</th><th>Supported</th><th>Automated testing</th><th>Notes</th></tr>
<tr><th>Browser/environment</th><th>Supported</th><th>Automated testing</th><th>Notes</th></tr>
<tr>
<td>Firefox ESR+</td>
<td>Firefox</td>
<td>Yes</td>
<td>Windows/Linux</td>
<td></td>
</tr>
<tr>
<td>Chrome 76+</td>
<td>Chrome</td>
<td>Yes</td>
<td>Windows/Linux</td>
<td></td>
</tr>
</table>
### `legacy` build
<table>
<tr><th>Browser/environment</th><th>Supported</th><th>Automated testing</th><th>Notes</th></tr>
<tr>
<td>Firefox ESR+</td>
<td>Yes</td>
<td>None</td>
<td></td>
</tr>
<tr>
<td>Chrome 85+</td>
<td>Yes</td>
<td>None</td>
<td></td>
</tr>
<tr>
<td>Opera</td>
<td>Yes</td>
@ -58,22 +76,22 @@ The objective is to support all HTML5 compliant browsers, but since feature supp
<td></td>
</tr>
<tr>
<td>Edge (Chromium-based)</td>
<td>Edge</td>
<td>Yes</td>
<td>None</td>
<td></td>
<td>Only the Chromium-based version is supported.</td>
</tr>
<tr>
<td>Safari 13.1+</td>
<td>Safari 14+</td>
<td>Mostly</td>
<td>None</td>
<td>Some missing features/defects have been reported, but no problems in general.</td>
</tr>
<tr>
<td>IE/Edge (not Chromium-based)</td>
<td>No</td>
<td>None</td>
<td>Too many missing features to be supported.</td>
<td>Node.js 14+</td>
<td>Mostly</td>
<td>Limited</td>
<td>Some missing features, but no problems in general.</td>
</tr>
</table>