Рендеринг PDF без рамки в Node.js (приложение Electron) - PullRequest
0 голосов
/ 29 декабря 2018

Я нахожусь в процессе написания приложения в Electron.Приложению требуется, чтобы файл PDF отображался во фрейме, занимающем примерно 50% окна.Из-за несколько ограниченного пространства мне бы хотелось решение, которое позволило бы мне рендерить PDF без каких-либо рамок, полей или панели управления вокруг него.В родных приложениях macOS у вас есть доступ к PDFView, который представляет собой средство рендеринга PDF без каких-либо ограничений.Я пытаюсь найти самую близкую вещь к этому, но для Node.js / Electron.

Прежде, чем это будет помечено как дубликат, я прочитал несколько постов "Рендеринг PDF в электронном виде" здесь,Все они указали на ряд библиотек, в частности «электронное pdf-окно».Проблема с библиотекой состоит в том, что все, что она делает - это оборачивает "PDF.js".Я просмотрел PDF.js, а также примеры, но он также имеет рамку в стиле chrome и элементы управления.

Существуют ли библиотеки / реализации средства просмотра PDF для Node.js / Electron, которые предоставляютпочти родной (macOS) опыт в "безрамном" окне?Он должен иметь поддержку копирования / вставки, а также поддержку жестов трекпада.Кроме того, он должен поддерживать документы объемом не менее ста страниц.

Дополнительный вопрос - Можете ли вы изменить программу просмотра Chrome PDF по умолчанию?(т.е. убрать верхнюю панель управления, а также обрезать все поля)?Это кажется самым быстрым (наиболее эффективным) способом сделать это, но я не уверен, если это возможно.

1 Ответ

0 голосов
/ 30 декабря 2018

После некоторых исследований и испытаний я обнаружил, что вы можете сделать очень минимальную версию PDF.js.Функциональность «пинч-масштаб» не так гладка, как в родном приложении, но вы можете довольно близко подобраться, если используете экспериментальный рендерер SVG в PDF.js.

Вот несколько примеров полногоПросмотрщик PDF без панели инструментов: https://github.com/mozilla/pdf.js/tree/master/examples/components

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...