Хорошая новость : есть способ запечатлеть ваш PDF полностью.
Плохая новость : это немного затянуто, и PDF может быть не на 100% правильным!
(Это лучше, чем ничего, верно?)
Итак, чтобы все это заработало, вам нужно сделать следующее:
- Получите отсюда версию NodeJS и установите ее
- а . Если вы
git
установили, просто клонируйте mozilla/pdf.js
репозиторий github
примерно так
git clone git://github.com/mozilla/pdf.js.git pdfjs
и cd
в каталог
b . если у вас нет , git
то вам необходимо скачать весь репозиторий кода здесь: https://github.com/mozilla/pdf.js/archive/master.zip
распаковать его , а затем открыть command prompt
и cd
в корне папки
- бег
node make server
На данный момент вы создали веб-сервер, localhost:8888
который может рендерить файлы pdf JavaScript
. Вы можете просмотреть пример PDF, перейдя на следующую страницу:http://localhost:8888/web/viewer.html?file=/examples/learning/helloworld.pdf
Далее вам нужно скачать PhantomJS.
- Хватай отсюда
- Распакуйте его куда угодно, а затем из командной строки
cd
в bin
папку
- Скопируйте
rasterize.js
файл из examples
папки phantomjs
в bin
папку (я знаю, что он немного грязный, но мы можем разобраться с этим позже, верно?)
- Откройте,
rasterize.js
потому что мы должны что-то изменить.
- Перейти к строке
45
и изменить время с 200
на что-то, как 5000
сейчас. Код должен выглядеть следующим образом: https://gist.github.com/HaykoKoryun/eba33f2011d3d69b773b
- Поместите копию
pdf
файла, который вы хотите захватить, в папку с именем test
в pdfjs
корневой папке
- Наконец, выполните следующую команду
phantomjs.exe rasterize.js http://localhost:8888/web/viewer.html?file=/test/xxx.pdf test.png 1920px*1080px
Что это за параметры, которые я слышу? Первый говорит, phantomjs
какой скрипт запустить. Это легко, в нашем случае это модифицированная версия rasterize.js
!
Второй - это загружаемый URL-адрес, на котором работает локальный веб-сервер pdfjs
. Обратите внимание, что вам нужно заменить xxx
имя вашего pdf
файла.
Третий параметр - это имя и формат файла, в который вы хотите сохранить запись.
Наконец, последний параметр - это размер захвата. Вам нужно будет поиграть с размером, чтобы убедиться, что вы захватили всю страницу.