Мне интересно узнать, как работает просмотрщик документов Google Docs PDF? Это не вспышка, как scribd.com; он выглядит как чистый HTML. Любая идея, как они это сделали?
Как работает программа просмотра документов Google Docs?
Ответ 1
Google просто выполняет показ изображения (щелкните правой кнопкой мыши → сохранить как), с наложением, чтобы выделить текст.
Вы должны проверить этот вопрос SO, где другие подробно рассмотрят.
Вы также должны просмотреть источник своей ссылки в формате PDF, похоже, Google передает PDF-ссылку для преобразования в изображение.
Пример:
<script type="text/javascript">
var gviewElement = document.getElementById('gview');
var config = {
'api': false,
'chrome': true,
'csi': true,
'ddUrl': "http://www.idfcmf.com/downloads/monthly_fund/2009/IDFC-Premier-Equityfund-jan10.pdf",
'element': gviewElement,
'embedded': false,
'initialQuery': "",
'oivUrl': "http://docs.google.com/viewer?url\x3dhttp%3A%2F%2Fwww.idfcmf.com%2Fdownloads%2Fmonthly_fund%2F2009%2FIDFC-Premier-Equityfund-jan10.pdf",
'sdm': 200,
'userAuthenticated': true
};
var gviewApp = _createGView(config);
gviewApp.setProgress(50);
window.jstiming.load.name = 'view';
window.jstiming.load.tick('_dt');
</script>
Edit
Также, если вы должны были просмотреть просмотрщик PDF в Firefox с помощью Firebug, вы заметите, что когда вы выделяете текст, он действительно только позволяет загружать divs, я предполагаю, что Google сканирует документ с помощью OCR, определяет, где текст и предоставляет матрицу координат, на которой будет размещаться размещение div, когда вы нажимаете и перетаскиваете ее, вводите местоположение указателя мыши, чтобы определить, какие divs должны отображаться.
Ответ 2
все это образ. текст подсветки наложения - это легко понять. но когда вы нажимаете ctrl + c, и он копируется в буфер обмена, эта часть меня полностью запятнала. потому что невозможно писать в буфер обмена с помощью javascript в firefox, но этот ctrl + c на изображении отлично работает в firefox. http://www.google.com/support/forum/p/Google+Docs/thread?tid=67dcf21ef8579b4c&hl=en&fid=67dcf21ef8579b4c00047e4a2a9fcb12
Ответ 3
Я согласен с некоторыми другими ответами - PDF представляется как PNG, и, скорее всего, текстовые области слоируются, возможно, используя абсолютное/относительное позиционирование. Вы можете извлечь PDF-информацию из PDF (конечно...). Формат PDF открыт - любой может это сделать (предоставляется, это может быть нелегко). Однако есть некоторые инструменты с открытым исходным кодом (xPDF...), которые позволяют экспортировать содержимое PDF, например XML. Возможно, что экспорт включает в себя информацию, такую как координаты, где текст страницы и изображения должны отображаться.