
マルチページdjvuファイルがあります。複数ページのサブセットのみを含む新しいdjvuファイルを抽出する方法を知りたいです。
たとえば、djvuファイルが10ページで構成され、元のdjvuファイルの3〜6ページで構成された新しいdjvuファイルを抽出したいとします。 djvused、djvmなどのdjvulibreのいくつかのコマンドで実行できますか?私はUbuntu Linuxを使用しています。
元のdjvuファイルからページを削除せずに抽出する方法と、削除せずに抽出する2つのシナリオを考えてみましょう。
ありがとうございます!
答え1
ページ範囲を明示的に保存する方法がないため、残りのページを削除することにしました。
# Extract and save each page in its own file
pages=$(djvused -e 'n' "$if")
for ((i=1; i<=$pages; i++)) ;do
of="${if%.*}.$(printf "%03d" $i).djvu"
djvused -e "select $i; save-page-with \"$of\"" "$if"
done
# Remove one page from an existing djvu file
djvm -delete "$if" 2 # remove page 2
# Save pages 3-6 to a new file, by removing
# all other pages from a copy of the original
from=3; to=6
of="${if%.*}.$from-$to.djvu"
cp "$if" "$of"
pages=$(djvused -e 'n' "$of")
for ((i=$pages; i>$to; i--)) ;do djvm -delete "$of" $i ;done
for ((i=1; i<$from; i++)) ;do djvm -delete "$of" 1 ;done
答え2
私はちょうど次を使用したいと思います:DjVuLibre DjView 4.5DjVuドキュメントビューア。 GUIに別名で保存以下の機能文書指定されたページ範囲をdjvuファイルに保存するメニューです。
答え3
バンドルされたDjVU分割を実装するための一連の単純なシェルステートメント:
mkdir -- 'mydoc/' &&
djvmcvt -i 'mydoc.djvu' 'mydoc/' 'new-mydoc-index.djvu'