Как сохранить захваченное изображение с веб-камеры в папку проекта / определенную папку - PullRequest
0 голосов
/ 15 марта 2019

Я пытаюсь сохранить изображение в картинке, которое было снято с помощью веб-камеры. Я использую AForget.NET.

То, что я хочу сделать, - это то, чтобы я хотел сохранить это изображение в папке Project / Specific Folder, когда я нажму кнопку Ok и получу путь, который был сохранен в папке.

Я получаю ошибку GDI +

Вот мой код

RegisterCustomer _regCustomer;

    public UpdateImageCapture(RegisterCustomer regCustomer)
    {
        InitializeComponent();
        _regCustomer = regCustomer;
    }

    ImageHelper img = new ImageHelper();

    private void ImageCapture_Load(object sender, EventArgs e)
    {

        img.ImageSettings
        (
            img._captureDevice,
            img.finalFrame,
            cboxWebcamType
        );

        img.finalFrame.NewFrame += new NewFrameEventHandler(FinalFrame_NewFrame);

        btnOk.Hide();
        btnCancel.Hide();
    }

private void FinalFrame_NewFrame(object sender, NewFrameEventArgs eventArgs)
{
        picPreviewImage.Image = (Bitmap)eventArgs.Frame.Clone();
}

Этот код указывает, что при нажатии кнопки захвата кнопка picCaptureImage (Picturebox2) получит копию клона picPreviewImage (Picturebox1)

ПРИМЕЧАНИЕ: Picturebox1 показывает себя с веб-камеры

private void BtnCapture_Click(object sender, EventArgs e)
{
        picCapturedImage.Image = (Bitmap)picPreviewImage.Image.Clone();
        picCapturedImage.BringToFront();
        btnCapture.Hide();
        btnOk.Show();
        btnCancel.Show();
}

private void BtnOk_Click(object sender, EventArgs e)
{
   if (picCapturedImage.Image != null)
        {
            var bitmap = new Bitmap(picCapturedImage.Image);
            var newBitmap = new Bitmap(bitmap);
            bitmap.Save(@"C:\Users\dieth\source\repos\SalesInventorySystem\SalesInventorySystem\Resources", ImageFormat.Png);
            bitmap.Dispose();
            bitmap = null;
        }
        else {
            MessageBox.Show("NULL");
        }
}

1 Ответ

0 голосов
/ 16 марта 2019

Я решил, но когда я снова попытался сделать снимок, он просто заменил изображение из этого файла.

if (picCapturedImage.Image != null)
            picCapturedImage.Image.Save(@"..\..\Resources\ImageCapture.Png", ImageFormat.Png);
...