2016-11-16 45 views
0

私は基本的な16色のみを使用できるサードパーティのソフトウェアによって生成されたビットマップ画像を持っています。ImageMagickは、C#を使用してパレットの色を置換することを変更します

純粋な黄色のRGB(255,255,0)を若干濃い色に変更する必要があるため、印刷するとRGB(255,192、0)のデータがあることがわかります。

Mogrifyコマンドが見つかりましたが、これはコマンドプロンプトで使用されています。これはC#のメソッドと同じものを使用する必要があります。事前に

感謝:D

+0

、多分それは単純に代替することができ、ここであなたはそれが作業を取得する必要がすべてです:のhttp:// www.aforgenet.com/framework/docs/html/67fa83b5-dede-8d3a-8d3b-b7a6b9859538.htmおよびhttp://www.aforgenet.com/framework/docs/html/35bd90e3-4e35-8f5f-e255-26c5d8d4b927。 htm – Innat3

答えて

1

私の答えはあなたのイメージは、インデックスカラーパレットを持っていることを想定しています。 System.Drawingオブジェクトを使用して、.BMPファイル(またはインデックス付き.PNG)のパレットを編集できます。コードは次のようになります。私は** ** AForge.Imagingライブラリを使用して同様のことをした

using System.Drawing; 
using System.Drawing.Imaging; 
... 
using (var bmp = (Bitmap)(Image.FromFile("input.bmp"))) 
{ 
    var paletteCopy = bmp.Palette; 

    // palette index 11 is bright yellow in the standard palette 
    paletteCopy.Entries[11] = Color.FromArgb(255, 192, 0); 
    bmp.Palette = paletteCopy; 
    bmp.Save("output.bmp", ImageFormat.Bmp); 
} 
関連する問題