V8J SP1の新機能
DioDocs for Excel
セルアドレスをカスタム属性としてHTML出力時に追加
ワークブックをHTMLファイルとしてエクスポートする際に、各セルのアドレスを表データセル要素(td)のカスタム属性として追加できるようになります。HtmlSaveOptionsクラスにCellAttributeOptionsプロパティが追加されます。このプロパティのパラメータにCellAttribute.Addressを設定することで、HTMLとして出力する際にセルのアドレスが追加されます。
VLOOKUP関数とUNIQUE関数のパフォーマンス改善
従来のバージョンでは、VLOOKUP関数やUNIQUE関数を大量のデータに適用した場合に、関数処理のパフォーマンスが著しく低下するケースがありました。V8J SP1ではこれらの問題に対応すべく内部のアルゴリズムが見直されています。
以下はBenchmarkDotNetを使用してV8J SP1とV8Jのパフォーマンスを比較した結果です。
関数 | テストデータ件数 | V8J 処理時間 | V8J SP1 処理時間 | 改善率 |
---|---|---|---|---|
UNIQUE | 12,000件 | 103.2ms | 30.03ms | 約70.9%短縮 |
VLOOKUP | 50,000件 | 30,649.2ms | 245.68ms | 約99.2%短縮 |
※BenchmarkDotNet:0.14.0、CPU:13th Gen Intel(R) Core(TM) i7-1360P 2.20 GHz、メモリ:16.0 GBで比較した場合
SpreadJSとの互換性強化
SpreadJSとDioDocsの間でワークブックを連携する際の互換性強化として、V8J SP1ではSJS形式やSSJSON形式との間でファイルの損失なし(ロスレス)保存が可能となる機能が追加されます。以下のSpreadJSの機能がロスレス対応となります。
- データチャート
SpreadJSで挿入されたデータチャートが、SJS/SSJSONファイルにそのまま保持され、DioDocs側でも再現性を保ったまま読み込み/保存が可能になります。 - データマネージャーのテーブルをデータソースとしてバインド
SpreadJSのデータマネージャー(Data Manager Table)に対応し、DioDocs側でもSpreadJS上のデータ構造とバインディング設定をそのまま利用可能になります。 - データ範囲
SpreadJSのデータ範囲(DataRange)に対応し、データ範囲の機能で定義されたデータをDioDocs側でもそのまま参照/利用できるようになります。
DioDocs for PDF
アクション(音声ファイルを再生)の追加
PDFドキュメント上でボタンクリックやマウスオーバーなどのユーザー操作を行った際に、指定した音声ファイルを再生できるようになります。V8J SP1ではActionSoundクラスが追加されています。このクラスを使用することで、従来の音声を扱う機能である「音声注釈」や「リッチメディア注釈」にはなかった、音声の音量/同期・非同期/ループを設定することが可能です。このアクションは、PDFビューワでもサポートされています。
DioDocs for PDF(PDFビューワ)
表データの抽出
PDFドキュメント内にある表領域をビューワ上から視覚的なインターフェースで抽出する範囲を選択・調整し、データを複数のファイル形式(CSV、TSV、JSON、XLSX、XML、HTML)で出力できるようになります。
WebAssembly(Wasm)の機能強化
V7J SP2ではWebAssembly(Wasm)をベースにした新しいPDFビューワが導入されています。Wasmを使用したPDFビューワでは、従来のようにサーバーサイドに編集用APIをセットアップする必要がなく、クライアントサイドでPDFドキュメントの編集を完結することができます。V8J SP1からはV7J SP2導入時に制限事項となっていた以下の機能が利用できるようになります。
墨消し注釈の作成および適用
対象のテキストや領域を選択し、墨消し注釈を追加・編集できるようになります。注釈のコンテンツ変換
対象の注釈をコンテンツに変換できるようになります。画像(PNG形式)へのエクスポート
PDFドキュメントをPNG形式の画像としてエクスポートできるようになります。リニアライズ
PDFドキュメントをWeb表示用に最適化されたPDFとしてエクスポートできるようになります。