C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: 画面の監視〜OCRを用いて(C#.VB..net


(過去ログ 178 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■102094 / inTopicNo.1)  画面の監視&#12316;OCRを用いて(C#.VB..net
  
□投稿者/ ななしん (3回)-(2023/06/30(Fri) 08:34:54)

分類:[.NET 全般] 

クリップボードにいれないで
パソコンの画面上に特定の文字がないか調べる方法、コードなどないでしょうか?


今操作している画面をOCR機能で読み込み「yamada」という文字列があったら
メッセージボックスを出す。っと言う感じで

using Windows.Media.Ocr;
&#12316;どう読み取り、取得した文字が何か?
っと調べられるのか?

今操作しているのをプリントスクリーンだとクリップボードに入ってコピられるので
クリップボード操作ができません。


C#.VB..net
付近の作成でお願いします。
引用返信 編集キー/
■102095 / inTopicNo.2)  Re[1]: 画面の監視&#12316;OCRを用いて(C#.VB..net
□投稿者/ 魔界の仮面弁士 (3658回)-(2023/06/30(Fri) 09:32:32)
No102094 (ななしん さん) に返信
> 今操作しているのをプリントスクリーンだとクリップボードに入ってコピられるので
> クリップボード操作ができません。

ユーザー操作によるPrint Screen ではなく、プログラム側からの撮影で良いのなら、
Graphics.CopyFromScreen メソッドを使用すれば、画面上の指定された範囲を
クリップボードに影響を与えずに撮影することができます。


画面をキャプチャする(Graphics.CopyFromScreenメソッド)
https://dobon.net/vb/dotnet/graphics/screencapture.html

フォームやコントロールの外観をキャプチャする(Control.DrawToBitmapメソッド)
https://dobon.net/vb/dotnet/graphics/invokepaint.html
引用返信 編集キー/
■102096 / inTopicNo.3)  Re[2]: 画面の監視&#12316;OCRを用いて(C#.VB..net
□投稿者/ 魔界の仮面弁士 (3659回)-(2023/06/30(Fri) 10:03:27)
No102095 (魔界の仮面弁士) に追記
> ユーザー操作によるPrint Screen ではなく、プログラム側からの撮影で良いのなら、

撮影したい相手がブラウザーの場合、Selenium 経由で良ければ
ITakesScreenshot インターフェイスの GetScreenshot メソッドを用いて
撮影できます。

https://web.biz-prog.net/praxis/selenium/common_screenshot.html
https://qiita.com/tkarasuma/items/838b1d6277412df9e13f


using System;
using System.IO;
using System.Reflection;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium.Edge;
using OpenQA.Selenium.Firefox;

internal static class Program
{
  private static void Main()
  {
    IWebDriver driver = new EdgeDriver(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location));
    // IWebDriver driver1 = new ChromeDriver(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location));
    // IWebDriver driver2 = new FirefoxDriver(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location));

    driver.Navigate().GoToUrl("https://referencesource.microsoft.com/results.html");
    Screenshot screenshot = ((ITakesScreenshot)driver).GetScreenshot();
    screenshot.SaveAsFile(@"E:\Example.png", ScreenshotImageFormat.Png);
  }
}
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -