スキップページを含むスクリプト

スキップページを含むスクリプト

私はdjvuの本のスキャンバージョンを持っています。 2つの状況を考えてみましょう。

  1. ページ番号を付けたいです。0, 1, 2, ...(ユースケース:カバーは0ページでなければなりません。)

  2. 一部のページにはローマ数字で番号を付け、一部のページにはアラビア数字で番号を付けたいです。たとえば、次のようになります。 (i, ii, iii, ..., x, 1, 2, 3, ...ユースケース:本の一部の紹介ページにはローマ数字で番号が付けられています。)

Linuxで実装できますか?

ベストアンサー1

可能ですが、要求する必要がある場合はあまり役に立ちません。set-page-title次の一連のコマンドを生成するには、スクリプトが必要です。

select 1; set-page-title "Cover"
select 2; set-page-title "i"
select 3; set-page-title "ii"
select 4; set-page-title "iii"
select 5; set-page-title "1"
select 6; set-page-title "2"
select 7; set-page-title "3"
select 8; set-page-title "4"
select 9; set-page-title "5"
select 10; set-page-title "6"
...

djvusedDjVuファイルへの変更をコミットするには、スクリプトの出力をパイプする必要があります。

djvu_pagination | djvused -f - -s file.djvu

しかし、チャンスは一度だけ与えられます。番号が間違っていると、同じコマンドを再実行することはできず、コンポーネント名を参照して論理ページ番号をリセットする必要があります。問題は次のとおりです。

select "all_24223_to_00243.cpc.djvu"; set-page-title "all_24223_to_00243.cpc.djvu"
select "all_24223_to_00243.cpc0002.djvu"; set-page-title "all_24223_to_00243.cpc0002.djvu"
select "all_24223_to_00243.cpc0003.djvu"; set-page-title "all_24223_to_00243.cpc0003.djvu"
select "all_24223_to_00243.cpc0004.djvu"; set-page-title "all_24223_to_00243.cpc0004.djvu"
select "all_24223_to_00243.cpc0005.djvu"; set-page-title "all_24223_to_00243.cpc0005.djvu"
...

djvusedその後、これらのコマンドを上記のようにパイプできます。

djvu_reset_pagination | djvused -f - -s file.djvu

昔々、人々はこれらすべてを処理するためにスクリプトを使用しました。そんな時代はもう通り過ぎました。

おすすめ記事