コピー貼り付けを無効にする方法(ブラウザー)の手順の回答1を使用して、portal_javascriptの下にjavascriptを登録しました :1>スクリプトをファイルにコピーしました
document.onkeydown = function(e) {
if (e.ctrlKey && e.keyCode === 65) {
// alert('not allowed');
return false;
}
if (e.ctrlKey && e.keyCode === 67) {
// alert('not allowed');
return false;
}
if (e.ctrlKey && e.keyCode === 86) {
// alert('not allowed');
return false;
}
};
document.oncontextmenu=new Function("return false")
手順 2) portal_javascripts を選択し、開発モードで同じ ID/URL を持つこのスクリプトを追加して保存しました。3. atreal.richfile.preview で、マウス ボタン イベント onSelectStart および onSelectDrag を False に設定して、テンプレート (atreal.richfile.preview.interfaces.ipreview-atreal.richfile.preview.viewlet) をカスタマイズします。プレビュー ウィンドウの右上のボタンを削除し、このウィンドウに pdf 以外のファイルも表示するようにコードを変更します。コード ブロックを次のように使用します。
<dl class="richfile portlet"
tal:condition="view/available"
tal:attributes="id view/plugin_id"
i18n:domain="atreal.richfile.preview">
<dt tal:attributes="id string:${view/plugin_id}Header" class="rfheader portletHeader">
<span class="portletTopLeft"></span>
<!--tal:block tal:replace="structure view/controls"-->
<span class="title" style="font-weight:bold"
i18n:translate="">
Preview
</span>
<span class="portletTopRight" ></span>
</dt>
<!--Your specific code here tal:condition="not:ispdf" -->
<dd>
<tal:block define="ispdf python:here.absolute_url().endswith('.pdf')">
<IFRAME src="http://www.xyz.com"
tal:condition="not:ispdf"
tal:attributes="src string:${here/absolute_url}/rfpreview"
width="100%" height="400" scrolling="auto" frameborder="1">
draggable="false" onselectstart="false"
</IFRAME>
</tal:block>
</dd>
</dl>
- ZMI では、portal_types/File で Aliases タブを選択し、Default と View Aliases の両方のメソッドを (selected layout) に変更して保存します。
- ZMI では、portal_skins/archetypes が at_download コードをカスタマイズして何も返さないか、コードを削除します。
- アドオン collective.documentviewer を使用して、pdf ファイルをプレビューします。これは私にとってはうまくいきます。私はこの問題を過去 1 か月半にわたって追求してきました。最後に、私は最終結果に満足しています。皆さんと共有する考え。:)