Параметры PDF и начального отображения
Query выглядит как ?file=...&config=catalog.json, fragment — #page=2&zoom=150. Кодируйте значение file целиком через rawurlencode(), http_build_query() или URLSearchParams, особенно для пробелов, кириллицы и адресов PDF с собственными ? и &. Финальный URL в HTML экранируйте.
| Параметр | Пример | Назначение |
|---|---|---|
file | /images/documents/catalog.pdf | Query: PDF с того же origin. |
config | catalog.json | Query: имя пользовательского JSON. |
page | 2 | Fragment: страница, начиная с 1. |
zoom | 150, page-width, page-fit, auto | Fragment: процент либо режим масштаба. |
pagemode | thumbs, bookmarks, attachments, layers, none | Fragment: боковая панель. |
Встроенный viewer требует совпадения origin PDF и просмотрщика: протокол, хост и порт. Внешний file URL отклоняется даже при разрешённом CORS. Храните PDF на сайте либо используйте собственный серверный endpoint с проверкой доступа. При прямом getDocument() внешние PDF возможны при корректном CORS. JSON тоже загружается с origin просмотрщика.