私は画像をスキャンするためにWIAを使用していますが、その画像は効率的に保存されません。SaveFile
は圧縮を利用していないようです。WIA:ファイルを保存するときに圧縮なし
現在、私はこのコードを使用しています:
WIA.ImageFile img = (WIA.ImageFile)item.Transfer(WIA.FormatID.wiaFormatPNG);
img.SaveFile(path);
は、圧縮のためにWIAを使用する方法、またはどのように他の私は、圧縮を使用して画像を保存することができはありますか?
編集:私は25〜10 MBのファイルサイズを小さくすることができた次のコードを使用して
。あなたの画像を保存する前に
WIA.ImageFile img = (WIA.ImageFile)item.Transfer(WIA.FormatID.wiaFormatPNG);
WIA.ImageProcess ImageProcess1 = new WIA.ImageProcessClass();
System.Object Object1 = null;
System.Object Object2 = null;
Object1 = (Object)"Convert";
ImageProcess1.Filters.Add(ImageProcess1.FilterInfos.get_Item(ref Object1).FilterID, 0);
Object1 = (Object)"FormatID";
Object2 = (Object)WIA.FormatID.wiaFormatPNG;
ImageProcess1.Filters[1].Properties.get_Item(ref Object1).set_Value(ref Object2);
img = ImageProcess1.Apply(img);
img.SaveFile(path);
サンプルコードを投稿できますか?リンクは崩壊するという不運な傾向があります。 –