Преобразование PDF в DOM с использованием JavaScript - PullRequest
1 голос
/ 19 декабря 2011

Я занимался этим довольно давно, и все, что я мог обнаружить, это pdf2dom парсер и, вероятно, версия this , разработанная в обратном порядке.Во всяком случае, вот мои вопросы.Для любого движка рендеринга его вход должен быть потоком данных (в моем случае это pdf-контент), а его вывод должен быть выбранным форматом (в моем случае DOM, HTML & CSS).

  1. Однако вместо использования java или c ++ возможно ли получить поток «данных в формате pdf» (о котором я понятия не имею) с сервера и сохранить впеременная javascript и использовать javascript, чтобы отобразить его и добавить его в DOM?

  2. Как появляются необработанные "данные в формате pdf" (существует ли какой-либо конкретный формат и т. Д.)?

Все входные данные приветствуются.

ПРИМЕЧАНИЕ: Должно быть совместимо с IE.

Ответы [ 2 ]

6 голосов
/ 19 декабря 2011

Это уже сделано. Результат pdf.js . Обратите внимание, что он работает путем рендеринга PDF на холст. Результат может быть гарантирован таким образом; некоторые функции PDF были бы невозможны вне холста.

2 голосов
/ 19 декабря 2011

PDF, как правило, представляет собой подмножество параметров PostScript + для встраивания flash, JavaScript и других видов.

Тривиальный перевод PDF в HTML (/ DOM) и его рендеринг в правильной манереэто почти невозможноНапример, PDF использует изображения JPEG, но с небольшими изменениями здесь и там, что означает, что вы должны конвертировать их перед использованием где-либо еще.Попробуйте прочитать некоторые презентации от PDF.js-guys, и вы найдете довольно длинный список WTF.

Однако, если у вас есть только простые PDF-файлы (простой текст, без изображений и т. Д.) Ине заботясь о сохранении чего-либо, кроме самого простого макета, вы должны иметь возможность вырезать строковые данные из PDF-файлов и поместить их в DOM.

Лично я считаю, что было бы проще либовынудите пользователей иметь плагин (flash / acrobat / ...) или отобразить серверную часть PDF-файла и использовать их в качестве изображений для браузера.

...