特定のPDFファイルを開くときにevince
「プレゼンテーションモード」で開くことを決定します。
マニュアルページでevinceにデモモードで開くオプションがあることがわかりましたが、-s
それを呼び出すことはありませんでした。私はすべてのPDFファイルを次のように開きます。evince file.pdf
どういうわけか、evinceはプレゼンテーションモードでこの特定の種類のPDFを開くことを独自に決定します。
他のPDFは通常のウィンドウでよく開きます。
この動作を無効にするにはどうすればよいですか?
答え1
次のようなドッドの答えこのフィールドを変更するには、PDFメタデータを編集する必要がありますPageMode
。異なる値を受け入れます。源泉):
UseNone
:ビューアで文書を開くと、ページのみが表示されます。 (ブックマーク、添付ファイル、ページサムネイル、レイヤーパネルは非表示になります。)UseOutlines
:ビューアで文書を開くと、そのページが表示され、ブックマークパネルが開き、概要(ブックマーク)が表示されます。UseThumbs
:ビューアで文書を開くとページが表示され、ページサムネールパネルが開き、サムネイルが表示されます。FullScreen
:ビューアで文書を開くと、ページがフルスクリーンモードで表示されます(メニューバー、ウィンドウコントロール、または他のウィンドウは表示されません)。UseOC
:たとえば、Adobe Acrobat Readerで文書を開くと、Readerはページを表示し、オプションのコンテンツグループパネル(レイヤーパネル)を開きます。UseAttachments
:ビューアで文書を開くと、そのページが表示され、添付ファイルパネルが開き、添付ファイルが表示されます。
などのpdftk
PDFメタデータを編集するために使用できるいくつかのツールがあります。ただし、テストの結果、実際にはそのメタデータフィールドに情報のみを追加できるようです。exiftool
qpdf
pdftk
このメタデータフィールドを変更するには、次のコマンドを使用できます。
pdftk file.pdf update_info info.txt output output.pdf
info.txt
含む
PageMode: UseNone
答え2
とにかく、彼はこの愚かなモードで特定の種類のPDFを開くことにしました。
この「決定」はPDF機能によるものです。
/PageMode /FullScreen
PDF自体でそれを次のものに置き換えて永久に無効にすることができます。
/PageMode /UseNone
...ファイルサイズを維持するために末尾に3つのスペースを追加します。
evinceはファイルの最後のプレゼンテーションモードを保存するので、最初に以前に見たPDFをウィンドウモードに切り替える必要があるかもしれません。
一般的に使用されるPDFに非常に便利です。ただし、これはこの問題の回避策にすぎません。
パッチ方法の例:
sed -zE 's|(<<[^>]*/PageMode\s*)/FullScreen|\1/UseNone |' Your.PDF > YourPatched.PDF
-i
この検索文字列は、すべての可能な状況では完全に安全ではないため、その場では実行されません。