質問
認識の結果からテーブルの空行を削除することができますか。
回答
以下の方法が使えます。
- テーブルをFlexiLayoutで取得する場合、「表」要素を使わなく、繰り返しグループでテーブルを取得する場合、取得方法をコントロールできます。ですので、繰り返しグループでテーブルを取得すると、ほとんどの場合、不要なデータ(空行等)を取得しないように設定できます。
- ワークフローにカスタム(スクリプト)ステージを追加し(または、イベントハンドラのスクリプトを追加し)、スクリプトで空行を削除します。以下のC#のサンプルスクリプトは、「Table」テーブルの「EmptyFieldName」列のテキストが空である場合、行を削除します。
string table = "Document Section 1\\Table";
int rowCount = Document.Field(table).Items.Count;
for (int i = 0; i < rowCount; i++){
if (Document.Field(table).Rows[i].Field("EmptyFieldName").Text == ""){
Document.Field(table).Rows.Delete(i);
rowCount -= 1;
}
}
- カスタムエクスポート(スクリプトエクスポート)を作成し、エクスポートのスクリプトで不要な行をエクスポートしません。
コメント
0件のコメント
サインインしてコメントを残してください。