背景: 私のアプリケーションでは、ユーザーが複数ページの tiff 内のどのディレクトリを表示して図形を描画するかを選択できます。丸や四角などの単純な形状が許可されます。
問題: ユーザーが複数ページの tiff で画像の 1 つを編集した後、変更されたディレクトリだけを更新することは可能ですか? libtiff.net APIでこれを行うことができるようには見えません。
このシナリオを処理するには、tiff 全体と各ディレクトリを再作成する必要があるようです。
ありがとう、
背景: 私のアプリケーションでは、ユーザーが複数ページの tiff 内のどのディレクトリを表示して図形を描画するかを選択できます。丸や四角などの単純な形状が許可されます。
問題: ユーザーが複数ページの tiff で画像の 1 つを編集した後、変更されたディレクトリだけを更新することは可能ですか? libtiff.net APIでこれを行うことができるようには見えません。
このシナリオを処理するには、tiff 全体と各ディレクトリを再作成する必要があるようです。
ありがとう、
残念ながら、通常、ライブラリを使用して TIFF 内の 1 つのディレクトリのみを変更することはできません。
ディレクトリを書き換えて、ファイル内の別の場所 (変更したラスター データを配置する場所) を指すようにすることができます。ただし、このアプローチでは、ラスターの重複により不要なファイル サイズが増加します。
ラスターとディレクトリをインプレースで置き換えることはできますが、ほとんどの場合、変更されたラスターは同じサイズではなく、さまざまな種類の破損の問題に簡単に遭遇する可能性があります。
したがって、「tiff 全体を再作成する」アプローチを採用することをお勧めします。
解凍/再圧縮せずに変更されていないラスター データをコピーする可能性があることを忘れないでください。