12

非常に便利なpdf.jsプロジェクトを見つけました。ただし、「ダウンロード」オプションを削除する方法がわかりません。

4

8 に答える 8

14

これをviewer.cssに追加するだけです

.download
{
    display:none !important;    
}

.print
{
    display:none !important;
}
于 2016-11-02T07:16:51.247 に答える
7

手順は次のとおりです。

  1. jQuery ライブラリを共有フォルダーに追加します。
  2. jQuery ライブラリを viewer.html ファイルにインクルードする
  3. これをヘッダー セクションに追加します。

    <script>
    $(function(){
        $('#download').hide();
    });
    </script>
    

終わり!

于 2014-10-30T20:45:01.313 に答える
3

ソースを変更します。web/viewer.html の 85 行目。

https://github.com/andreasgal/pdf.js/blob/master/web/viewer.html#L85

ボタンを外すだけ。

  <button id="download" title="Download" onclick="PDFView.download();" oncontextmenu="return false;">
    <img src="images/download.svg" align="top" height="16"/>
    Download
  </button>

これは、経験豊富で熱心なユーザーがダウンロードするのを完全に止めるわけではありません. それを止めることはできません。しかし、これは好奇心旺盛な人にとって十分なレベルを上げるには十分です.

于 2013-07-09T14:30:32.897 に答える
2

それを行う別の方法は、実際に使用しているように見えますpdf.customise.js(バンドルされている WordPress プラグインがこの方法を実行します)。openFile ボタンを削除するためにこれを行いました。

まず、 に次をviewer.html追加します。

<script src="pdf.customise.js"></script>

次に、pdf.customise.js好きなようにします:

(function($) {
    $(document).ready(function() {
        var params = window.location.search.substring(1).split("&");
        var disabledownload = false;
        var disableprint = false;
        var disabletext = false;
        var disabledoc = false;
        var disableopen = true;
        for (var i = 0; i < params.length; i++) {
            var value = params[i].split("=");
            if (value && value.length == 2)
                if (value[0] == "disabledownload" && value[1] == 1) disabledownload = 1;
                else if (value[0] == "disableprint" && value[1] == 1) disableprint = 1;
            else if (value[0] == "disabletext" && value[1] == 1) disabletext = 1;
            else if (value[0] == "disabledoc" && value[1] ==
                1) disabledoc = 1
        }
        var extracss = "";
        if (disabledownload) extracss += " .download {display:none!important;}";
        if (disableprint) extracss += " .print {display:none!important;}";
        if (disabletext) extracss += " .textLayer {-webkit-touch-callout: none !important; -webkit-user-select: none !important; -khtml-user-select: none !important; -moz-user-select: none !important; -ms-user-select: none !important; user-select: none !important;} .selectTool { display: none !important;}";
        if (disabledoc) extracss += " #documentProperties {display:none !important;}";
        if (disableopen) extracss += " #openFile { display:none!important;}";
        if (disableopen) extracss += " #secondaryOpenFile { display:none!important;}";
        if (extracss) {
            var style = document.createElement("style");
            style.type = "text/css";
            style.innerHTML = extracss;
            document.getElementsByTagName("head")[0].appendChild(style)
        }
        $(document).bind("pagerendered", function(e) {
            if (disabledownload) $(".download").remove();
            if (disableprint) $(".print").remove();
            if (disableopen) $("#openFile").remove();
            if (disableopen) $("#secondaryOpenFile").remove();
            if (disabletext) {
                $(".selectTool").remove();
                $(".textLayer").remove();
                if (PDFViewerApplication) PDFViewerApplication.pdfCursorTools.switchTool(1)
            }
            if (disabledoc) {
                $(".documentProperties").prev(".horizontalToolbarSeparator").remove();
                $(".documentProperties").remove()
            }
        })
    })
})(jQuery);

これが純粋なjavascriptの代わりにjQueryを使用するのは好きではありませんが(ただし、そのように簡単に書き直すことができます)、それでも非常にうまく機能します。

于 2019-03-24T22:04:39.527 に答える