静止画ファイル保存(JPEG)
イメージデータストリームから1枚のフレームを取得してJPEGファイルに保存する方法を示しています。
Software | IC Imaging Control 3.4, Visual Studio™ 2019 |
---|---|
サンプル(C#) | save_jpeg_cs_3.4.zip |
まず、ICImagingControlをフォームにドラッグして貼り付け、保存の為のボタンを配置します。
デバイス選択のダイアログ(.ShowDeviceSettingsDialog)をコールして使用するビデオキャプチャデバイスを選択します。正しいデバイスが選択されれば、.LiveStartによりライブ表示を開始します。
private void Form1_Load(object sender, System.EventArgs e)
{
icImagingControl1.ShowDeviceSettingsDialog();
if( icImagingControl1.DeviceValid )
{
icImagingControl1.LiveStart();
}
else
{
Close();
}
}
ユーザーが "Save Jpeg"ボタンをクリックすると、.MemorySnapImageがイメージデータストリームより画像フレームを取得し、内部のリングバッファに書き出します。
.ImageActiveBuffer は取得されたイメージを含むImageBufferオブジェクトを提供します。.SaveAsJpegにファイル名と画像品質(0~100)を与えてJPEGファイルを書き出します。
private void button1_Click(object sender, System.EventArgs e)
{
icImagingControl1.MemorySnapImage();
SaveFileDialog dlg = new SaveFileDialog();
dlg.AddExtension = true;
dlg.DefaultExt = "jpg";
dlg.Filter = "JPEG Images (*.jpg)|*.jpg||";
dlg.OverwritePrompt = true;
if( dlg.ShowDialog() == DialogResult.OK )
{
icImagingControl1.ImageActiveBuffer.SaveAsJpeg( dlg.FileName, 100 );
}
}