Об увеличении размера захваченного скриншота - PullRequest
0 голосов
/ 04 октября 2019

Я пытаюсь увеличить размер скриншота без потери качества (насколько это возможно), но я не могу этого сделать. Я обрабатываю эту картинку другим способом и filestream перестаю работать. На самом деле tesseract не может прочитать из-за размера скриншота, поэтому я пытаюсь увеличить размер скриншота, но не могу изменить размер скриншота во время захвата.

private void button1_Click(object sender, EventArgs e) 
{
    System.Threading.Thread.Sleep(4000); 
    Snapshot().Save("D:\\program_goruntusu.jpg");
    string s = FotoAnaliz();
}

private Bitmap Snapshot()
{
    Bitmap Screenshot = new Bitmap(20, 20);
    Graphics GFX = Graphics.FromImage(Screenshot);
    GFX.CopyFromScreen(1243, 349, 0, 0, new Size(20, 20));
    return Screenshot;
}

private string FotoAnaliz()
{
    FileStream fs = new FileStream("D:\\program_goruntusu.jpg", FileMode.OpenOrCreate);
    //string fotopath = @"D:\\program_goruntusu.jpg";
    Bitmap images = new Bitmap(fs);
    using (var engine = new TesseractEngine(@"./tessdata", "eng"))
    {
        engine.SetVariable("tessedit_char_whitelist", "0123456789");
        // have to load Pix via a bitmap since Pix doesn't support loading a stream.
        using (var image = new Bitmap(images))
        {
            using (var pix = PixConverter.ToPix(image))
            {
                using (var page = engine.Process(pix))
                {
                    sayı = page.GetText();
                    MessageBox.Show(sayı);
                    fs.Close();
                }
            }
        }
    }
    return sayı;
}
...