Я использую AForge.video.dll
и AForge.video.DirectShow.dll
.Изображение, показанное в PictureBox, до того, как оно было снято, отличается и снято изображение другое
Я хочу сохранить точное изображение, которое отображается в PictureBox в момент захвата (pbPhoto
является PictureBox я использовал для отображения видео камеры)
void cam_NewFrame(object sender, NewFrameEventArgs eventArgs)
{
Bitmap bit = (Bitmap)eventArgs.Frame.Clone();
pbPhoto.Image = bit;
}
private void btImage_Click(object sender, EventArgs e)
{
try
{
photo = true;
if (!scanFlag)
{
btPrintPass.Enabled = false;
scanFlag = true;
cam = new VideoCaptureDevice(webcam[comboBox1.SelectedIndex].MonikerString);
cam.NewFrame += new NewFrameEventHandler(cam_NewFrame);
cam.Start();
this.btImage.Text = "Stop Scan";
}
else
{
btPrintPass.Enabled = true;
scanFlag = false;
if (cam.IsRunning)
{
cam.Stop();
}
this.btImage.Text = "Scan Photo";
string path = "temp.Jpeg";
if (pbPhoto.Image != null)
{
pbPhoto.Image.Save(path, ImageFormat.Jpeg);
//this.pictureBox1.Image.Save(path,ImageFormat.Bmp) ;
FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.Read);
//long Len = ss.Length ;
//this.pictureBox1.Image.Save(
m_barrImg = new byte[Convert.ToInt32(fs.Length)];
int iBytesRead = fs.Read(m_barrImg, 0, Convert.ToInt32(fs.Length));
fs.Close();
}
}
}
catch (Exception ex)
{
LogError(ex.ToString());
}
finally
{ }
}
Как отличается от изображения, которого вы хотите? всего несколько кадров впереди? –
Изображение с изображениями показано как увеличенное изображение, но после захвата изображения он выглядит так, будто изображение запечатлено слишком далеко – shridhar
Тогда я подозреваю, что это свойство 'SizeMode' вашего' picturebox'. На что он настроен? –