libtiff.netカラー画像変換
-
08-10-2019 - |
質問
私はビットミラクルlibtiff.netを使用しています。
32BPP Argbカラー画像を使用して、このライブラリを使用してビットマップをTIFFに書き込むサンプルコードを見つけることができません。
他の誰かがこれを試みましたか?
これが私のサンプルコードです。ファイルを生成しますが、私が持っているソフトウェアでは表示することはできません。
編集:コードが機能するようになりましたが、色は間違っています!
public static void WriteTiff(Image image, string fileName)
{
Bitmap target = image as Bitmap;
BitmapData bmd = target.LockBits(
target.GetRectangle(),
ImageLockMode.ReadOnly,
PixelFormat.Format32bppArgb);
var bits = new byte[bmd.Stride * bmd.Height];
Marshal.Copy(bmd.Scan0, bits, 0, bits.Length);
target.UnlockBits(bmd);
Tiff tiff = Tiff.Open(fileName, "w");
tiff.SetField(TiffTag.IMAGEWIDTH, target.Width);
tiff.SetField(TiffTag.IMAGELENGTH, target.Height);
tiff.SetField(TiffTag.COMPRESSION, Compression.NONE);
tiff.SetField(TiffTag.PHOTOMETRIC, Photometric.RGB);
tiff.SetField(TiffTag.BITSPERSAMPLE, 8);
tiff.SetField(TiffTag.SAMPLESPERPIXEL, 4);
tiff.SetField(TiffTag.ROWSPERSTRIP, target.Height);
tiff.SetField(TiffTag.PLANARCONFIG, PlanarConfig.CONTIG);
tiff.WriteEncodedStrip(0, bits, bits.Length);
tiff.Close();
}
ありがとう
解決
編集の最新のビルド libtiff.net System.drawing.bitmapの変換のためのサンプルが含まれています 32ビット また 24ビット Color LZW圧縮TIFF画像。
TIFF画像を変換するためのサンプルもあります 32ビット また 24ビット System.drawing.bitmaps。/編集
また、レビューしたいかもしれません 「libtiff.netを使用したグラフィックプログラミング」 ドキュメントの記事。色TIFFファイルの作成に関する基本的な情報を提供する必要があります。
免責事項:私は図書館のメンテナーの一人です。
所属していません StackOverflow