質問
複数ページ画像の最初のページだけ処理したいです。設定方法を教えてください。
回答
本記事では、複数頁画像の最初のページだけ処理する方法について記載します。ここで説明する方法は、最初のページ以外は、ページカウントの処理がされない形となります(併せて、オリジナルの複数ページファイルの保存も実施します)。
前提条件:
- 複数ページで構成される1ファイルをFCで読み込む。
- OCRの結果が必要なページは、最初の1ページのみ。
- 最初の1ページ以外は、ページカウントの対象としない。
- 複数ページ画像を保存する。
方法としては、「ワークフローの設定」を利用する方法と、「スキャンステーション」を利用する方法があります。この2つの設定は、ワークフローの設定、および、スキャンステーションを利用する設定となりますので、Standalone版では、利用できない事、ご注意願います。
「ワークフローの設定」を利用する方法
ここでは、「ワークフロー」のスクリプト処理で、最初の1ページ以外は、付録ページとして扱う方法について記載します。
注意:本方法は、スキャンステーションでは、対応できません。基本ホットフォルダ(監視フォルダ)を利用します。
また、「ワークフロー」の設定となる為、状況によっては、他の文書定義に影響しない様、別途バッチタイプの作成、ホットフォルダの作成を検討する必要があります。
手順:
- 文書定義の付録ページを設定する。
文書定義エディタ:「文書定義メニュー>文書定義プロパティ」 を選択。「アセンブリ」タブを開きます。
- 付録ページを有効化:チェック
- 付録ページ:最小数(任意の数)、最大数(任意の数)
本設定を完了したら、OKボタン、文書定義を保存、公開します。
-
ワークフローのスクリプト設定を、スキャンの後に追加、1ページ以外を付録にするようなスクリプト処理を入れます:
プロジェクト設定ステーション:「プロジェクトメニュー > プロジェクトプロパティ」 を選択。「ワークフロー」タブを開きます。
スキーマ:「詳細設定」を選択。「+ステージ」ボタンをクリックします。
「処理ステージを作成」画面が表示されます。「自動」を選択し、「OK」ボタンをクリックします。
「ワークフローステージプロパティ」画面が表示。
- 「スクリプト」タブを選択、
- 「タイプ:バッチ処理」選択
「スクリプトを編集」ボタンをクリックします。
「スクリプトエディタ」で以下の内容を反映します。
(スクリプト言語:C#)
for (int i = 0; i<Batch.DocumentsCount; i++)
{
for(int j = 0; j<Batch.Documents[i].Pages.Count; j++)
{
if(j != 0)
Batch.Documents[i].Pages[j].MarkAsAnnex();
}
}上記スクリプトでは、1頁以外を「MarkAsAnnex」に設定していますが、FullTextも情報として取れるので、文字列による判別も可能となります。その場合、確認したページ迄がページカウントの対象となります。
また、前提条件として「1ドキュメントとしてハンドルする」必要があります。
「ワークフロー」タブまで戻り、「上に移動」、「下に移動」ボタンを利用して、今回追加した「スクリプト」を、「スキャン」の後、「認識」の前に配置します。
以上で設定は完了です。
監視フォルダで画像読込を実施すると、1ページのみが認識対象となり、他のページは「付録ページ」として処理され、ページカウントも1枚のみ消費されていることを確認できます。
-
補足:画像のエクスポート設定。
文書定義エディタ:エクスポートの設定で、画像も保存するようにすると、複数ハンドルした画像がエクスポートされます。
(設定例)
「スキャンステーションの機能」を利用する方法
ここでは、スキャンステーションを利用し、画像を1ページに加工して処理+スキャンステーションの添付機能を利用して、オリジナル画像を指定の場所に保存する方法について記します。
手順:
-
文書定義:添付画像を保存するスクリプトを設定。
文書定義エディタ:「文書定義メニュー>設定のエクスポート」 を選択。
「エクスポートの設定」画面で、「追加」ボタンをクリックします。
「エクスポート先ウィザード」画面で、「タイプ:カスタムエクスポート(スクリプト)」を選択します。
「スクリプトの編集」ボタンより、スクリプトエディタを開き、以下のスクリプトを記載します。
- スクリプト言語:C#
- ファイルの保存先(「Document.Batch.Attachments.Get(ss).ToFile」の引数)は、任意
if(!Document.Batch.Attachments.IsEmpty){
IVARIANTArray vv = Document.Batch.Attachments.Names;
int ii = vv.Count;
string ss = vv[0].ToString();
Document.Batch.Attachments.Get(ss).ToFile(@"\\FC12R3\\Shared02\\" + ss);
}保存、OK等を実施、文書定義を保存、公開します。
-
スキャンステーションによる、画像:1ページのみの加工。ファイルの添付。
スキャンステーションを起動、バッチを作成し、「画像を読み込み」にて、画像を登録します。
複数ページある場合、不要な画像を削除します(1ページのみの構成にします)。
但し、オリジナルの画像は、保存したいので、バッチのプロパティから、ファイルを添付します。
上記、設定でファイルを送信、検証画面を終了することで、スクリプトで記載した場所に画像ファイルが保存されます。
設定は以上です。
コメント
0件のコメント
サインインしてコメントを残してください。