09-30-2011 05:40 AM
現在LabView2010を使用してアプリケーションを作成しています。
アプリケーションの機能として「現在表示されているアプリケーションの画面を画像ファイル(.bmp又は.jpg)として出力する」を実装しようと考えています。
ですがLabViewの機能で画面のキャプチャがあるかの調査をしたところ、それらしき機能が見当たりませんでした。
上記の機能をLabView上で実装は可能なのでしょうか?可能であれば実装方法を教えていただけないでしょうか?
09-30-2011 09:06 AM - 編集済み 09-30-2011 09:07 AM
>アプリケーションの機能として「現在表示されているアプリケーションの画面を画像ファイル
>(.bmp又は.jpg)として出力する」を実装しようと考えています。
「現在表示されているアプリケーションの画面」というのは、「そのviのフロントパネルの画面」
ということでよいでしょうか。
それであれば、viのインボークノードでフロントパネル画像を取得し(ウインドウ内の範囲に
限定するか否か選択可)、インボークノードを実行した時点でのパネル画像情報を
bmp、jpg、pngなどに書き出すことは出来ます。
他のviのフロントパネルでも、viリファレンスを使うことで同様に取得・書き出しできます。
(LabVIEW以外の他アプリケーションも含めて、現在選択されている最上位ウインドウの画面を・・・
となると、Windows関連APIを駆使して、若干めんどくさくなりますが、、、)
添付は、いささか古いバージョンのダイアグラムですが、2010でもアイコンは違えど同等な
機能はあると思います。もしかしたら、新しいほうのバージョンでは、この添付のように
画像情報が複数のデータに分かれていなくて、1つのデータにまとめられているかも知れません。
10-02-2011 08:27 PM
A348 様
日本ナショナルインスツルメンツ技術部の原と申します。平素より NI 製品をご利用頂きまして誠にありがとうございます。
M.Shiraishi 様の仰ったように「インボークノード」により可能です。
補足といたしましては、LabVIEW 2010 を使用とのことですが、「インボークノード」から画像を取得する際はクラスタとして出力されます。
この場合、出力クラスタを直接「JPEGファイルに書き込む」に入力して頂ければ可能です。
各ノードと関数は以下にて入手可能です。
プログラミング » アプリケーション制御 » インボークノード
プログラミング » グラフィック&サウンド » グラフィック形式 » JPEGファイルに書き込む
添付もご参考ください。
宜しくお願い致します。
技術部 原 智 (Satoshi Hara)