OperaでPDFをオンラインリーダーで開くようにする

PDFをウェブページとしてチェックできるようにして離脱を減らそう

  • 大きさを変えられる
  • 途中から読める
  • ページの前進後退が可能
  • テキストで検索できる

オンラインリーダーを今まで使ったことないんだが、これはいい。というわけでOperaで開いたら自動的にこのリーダーを使うようにしよう。

プログラムで指定

"C:\Opera\opera.exe" "http://pdf.openvista.jp/view/%s"

こんな感じでapplication/pdfに登録すれば完了・・・しなかった。なぜかエラーが出て開けない。なぜだ!

User JavaScript

仕方ないのでUser JavaScriptでどうにかしよう。リンクを全て書き換えると直接開いた際にオンラインリーダーで開いてくれない。

そこで全てのページで動作するようにして、現在のページのContent-Typeがapplication/pdfならオンラインリーダーにリダイレクトするように・・・ってOperaはContent-Type取れないんだった!

じゃあURLで判断するしかないな。

// ==UserScript==
// @name        redirect pdf reader
// @namespace   http://bmky.net/
// @include     *.pdf
// ==/UserScript==

( function( ) {
    if( location.href.match( /\.pdf$/ ) && !location.href.match( /http.*?http/ ) ) {
        location.href = "http://pdf.openvista.jp/view/" + location.href;
    }
} )( );

redirect_onlinereader.jsとでも名前を付けて保存。一応動くけど、これだとURLにpdfが入ってないと動かないんだよなぁ。その時用に右クリックメニューにも仕込んでおこう。

Item, "オンラインPDFリーダで読む" = Go to page, "http://pdf.openvista.jp/view/%u"

こなかじ。試しにうちのハッカーズマップを表示してみよう。

http://pdf.openvista.jp/view/http://bmky.net/data/sh/sh_map.pdf

んむ、なかなかいいね。こうやってURLで渡せれば、相手にAdobeリーダーを開かせる必要が無いので不快な思いをさせなくて済む。

そうそう、これを実際に動作させる場合は、ツール>設定>詳細設定>ダウンロード>右上のチェックを外して左のテキスト欄にpdfと入力>application/pdf>編集。

恐らく「他のアプリケーションで開く」にマークされていると思うので、「Operaで開く」をマークすること。こうしないとAdobeリーダーやらFoxitリーダーで開いてしまう。