web-dev-qa-db-ja.com

GoogleドキュメントPDFビューアはどのように機能しますか?

Google Docs PDFビューアがどのように機能するのか知りたいです。scribd.comのようなフラッシュではなく、純粋なHTMLのように見えます。どのようにそれを行ったのでしょうか。

PDFを表示するためのサンプルリンク

17
Jeeva Subburaj

Googleは、テキストを強調表示するオーバーレイを使用して、画像を提供しているだけです(右クリック->名前を付けて保存)。

あなたはチェックアウトする必要があります this SO question 他の人がより詳細に入るところ。

また、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> 

編集

また、Firebugを使用してFirefoxでPDFビューアを表示すると、テキストを「強調表示」すると、実際にはdivのロードのみが有効になります。Googleがドキュメントをスキャンしていると思いますOCRを使用して、テキストの場所を検出し、divの配置の基礎となる座標のマトリックスを提供します。クリックしてドラッグすると、マウスポインターの位置が表示され、表示するdivが決定されます。

18
Ben Everard

全部がイメージです。テキストハイライトオーバーレイ-簡単に理解できます。しかし、ctrl + cを押してクリップボードにコピーすると、その部分は完全に困惑します。 Firefoxでjavascriptを使用してクリップボードに書き込むことはできませんが、画像上のこのctrl + cはFirefoxでは正常に機能します。 http://www.google.com/support/forum/p/Google+Docs/thread?tid=67dcf21ef8579b4c&hl=en&fid=67dcf21ef8579b4c00047e4a2a9fcb12

1
foo

私は他のいくつかの答えに同意します-PDFはPNGとしてレンダリングされ、おそらく絶対/相対配置を使用してテキスト領域が階層化されます。PDF PDF(もちろん...)からの情報)PDFフォーマットはオープンです-誰でもそれを行うことができます(もちろん、そうかもしれません)簡単ではありません)しかし、XMLのようにPDFコンテンツのエクスポートを可能にするいくつかのオープンソースツール(xPDF ...)があります。エクスポートには座標などの情報が含まれている可能性があります。ページのどこにテキストと画像を表示するか。

1
Jonny