astel-labs.net

C#などのプログラミングTipsや雑記をつらつらと書くかもしれないブログです。

  • Home
RSS
Author Archives: Nymphaea

WPF – SnippingTool っぽい物を作ってみた

Posted on 2012年7月21日 by Nymphaea
No Comments

SnippingTool ってなんだろう? と思う方も多いのかもしれませんが、「Microsoft 拡張パック for Windows XP Tablet PC Edition」やStarter と Home Basic を除くエディションの Windows Vista と Windows 7 に標準で含まれている、指定した画面上の部分的な範囲のスクリーンショットを切り取るツールです。

こんなツール。通常はスタートメニューの「アクセサリ」直下にあります。

このツールを実行してみるとわかるのですが、以下のような感じで簡単にスクリーンショットをとることができます。
マウスで切り取りたい範囲をドラッグすると赤枠で囲まれた範囲が透過します。

これと同様の機能が Excel 2010 にもあります。
この機能には大変お世話になっています。

 

で、これらのツールを使っていて矩形の中を透過させるにはどうすればいいのかをふと考えて、だいぶ前にサンプルとしてコードを組んでみたものです。
WPF を使うことで、ものすごく簡単にこのようなことができることがわかると思います。

Read more …

Categories: C#, WPF, プログラミング

WPF – 文字の縁取りをする

Posted on 2012年5月6日 by Nymphaea
No Comments

結構前に WPF で文字の縁取りについて話題にしたことがありましたが、その後 MSDN のサンプルコードを基に私なりに実装を行って利用していたのですが、つい最近海外のサイトを巡っていた際、スマートな方法で文字の縁取りをしているサンプルコードを見つけたため紹介します

(アクセス解析でも、検索ワードが「縁取り」でこのサイトに来る方が意外と多いようでした)

 

ちなみに、サンプルを実行すると以下のようになります

 

Read more …

Categories: C#, WPF, プログラミング

WPF – TextBlockでのURLアドレスの検出とHyperlinkの改行

Posted on 2012年5月3日 by Nymphaea
No Comments

DolChatMonitor で実装した後にサンプル公開用に準備をしていたのですが、公開用に機能のみを切り貼りしてからリファクタリングをするつもりがつい面倒になってそのまま放置していたのですが、ちょうど GW になったのでリファクタリングしないで(!)そのまま公開することにしました

WPF の TextBlock はかなり高機能なコントロールなのですが、内部的にそれなりに面倒な処理をしなければならないので、意外と単純なテキスト表示以上のサンプルは見かけません。

そこで、今回はタイトルの通り TextBox に入力した文字列から URL アドレスの検出と、Hyperlink の改行を行います
完成したイメージは以下のようになります

例では TextBlock の Hyperlink を MouseOver の状態でスクリーンショットを撮ったため赤く表示されています
また、HyperLink は URL アドレスとして検知している範囲でであればいくらでも改行できます

Read more …

Categories: C#, WPF, プログラミング

ホスティング会社やいろんなものを変えてみた

Posted on 2012年4月10日 by Nymphaea
No Comments

いつものことですが、前回の更新から日がかなり開いてしまいました。
去年の年末からさらに仕事が忙しくなって、家でプログラムを組んだりすることもなくひたすら体力温存のため寝る生活でした。。。

で、ブログを更新することもなく放置していたところ、毎年4月のドメイン更新の通知が3か月前に来たため、これまで使っていたホスティング会社から移転することにしました。(よりによって激しく忙しい時期に・・・)
これまで使ってきたホスティング会社は値段が安かったのですが、それなりの機能しか使うことができなかったため、若干高くても 使いたい機能が使える会社を探すことに。
また、移転に伴ってブログエンジンを MovableType から、 WordPress へ変更。
さらに、前のブログデザインでは見難かった SyntaxHighlighter を見やすくするため、デザインもシンプルでカスタマイズしやすいものへ変更しました。

 

Read more …

Categories: 雑記

WPF – クライアント領域にグラス効果を適用する

Posted on 2011年4月15日 by Nymphaea
No Comments

今回も海外サイトを眺めていた時に見つけたサンプルになります

ただ、海外のサイトも断片的な情報しかなかなか見つからなかったため、ほかのサイトやMSDNを巡ってそれっぽい感じのサンプルに作り直してみました

サンプルの見た目はこんな感じ

 

 

サンプルで意外と面倒だったのは、ウィンドウアイコンやウィンドウタイトルの配置でした…

見つけたサンプルではアイコンが純粋なボタンスタイルで配置されていたり、タイトルの背景にブラー的なエフェクトがかかっていなく背景が黒いと見難かったりしたので、適当にそれっぽく見えるように追加してみました

タイトルの背景が若干白っぽく浮いて見えるようにスクリーンショットを撮ってみましたが、あんまりわからないですね…

 

Read more …

Categories: WPF, プログラミング

WPF – StatusBarItemの右寄せ

Posted on 2011年4月10日 by Nymphaea
No Comments

お久しぶりです!
ここずっと色々と忙しいうえに、家でネット環境が使えない状態が続いているため更新ができない言い訳が(ry

 

WPF を利用して困ることの一つで、 WindowForms では出来ていたことが、WPF ではどうやるのかわからないことが多々あります

その一つとしてステータスバーやツールバーの右寄せ方法がわからない! ということがあるはず…

わたしはステータスバーについては、StatusBarItem 要素に FlowDirection プロパティを設定することで疑似的に右寄せを行っていたのですが、海外のサイトを見ていた時に StatusPanel コントロールは内部的に DockPanel コントロールを作成し、StatusBarItem オブジェクトをその中に配置しているという記事を見つけました

 

 

Read more …

Categories: WPF, プログラミング

WPF – 文字の縁取り方法

Posted on 2011年1月20日 by Nymphaea
No Comments

昨年末からずっと、SharePoint 2007 から SharePoint 2010 への移行作業に追われ、開発にいたころ以来久しぶりの忙しさでした・・・(まだ作業は終わっていませんけど)

うちの会社はIT系企業ではないので、そもそも SharePoint で必要とされるソフトウェア関連の知識を持った人が乏しい為、Office InfoPath のフォームの作成から、データベースの構築、データアクセス用 web サービスの作成、サーバーファーム構成を含めたネットワーク構成の構築、IISサーバー設定と、ほぼすべての作業を1人でする羽目に・・・

外部に出せば数百万円する作業をこなしているわたしに、会社はボーナスを出せばいいと思います!!

 

 

とまあ、わたしの愚痴は置いといて(今回の記事は書くことがあまりなかったので・・・)、
SharePoint でウンウンと頭を悩ませているとき、別の調べものの最中に偶然見つけたサンプルコードに、いままでずっと頭を悩ませていた文字の縁取りに使える手法を見つけました!
(むしろ、なぜ気づかなかった? というレベルの内容です・・・)

ともあれ、サンプルで書いたコードを実行するとこんな感じになります

↑正しくはドロップシャドウです・・・ もちろんワザとですよ?

 

Read more …

Categories: WPF, プログラミング

WPF – トグル表示可能なボタンの作成

Posted on 2010年11月29日 by Nymphaea
No Comments

最近よく聞かれるので、そのメモです

 

WindowsForms でフォームを作成した際には、ツールバーメニューのボタンをトグル表示可能(ON と OFF を切り替えられるよう)なボタンとして作成する際には、ツールバーボタンのプロパティを設定することで作成することができましたが、WPF ではボタンをツールバーに配置しても、トグル表示のプロパティが見つかりません

実は、WPF ではボタンクラスにトグル表示のプロパティは用意されていません!

 

トグル表示を行うには、xaml のボタンタグを直接編集するかコードで直接コントロールを挿入する、VisualStudio の「ツールボックス」に専用のコントロールを配置するの何れかになります

 

Read more …

Categories: C#, WPF, プログラミング

複数カメラを利用したリアルタイム画像処理 Part3

Posted on 2010年10月13日 by Nymphaea
No Comments

今回はカメラから取り込んだ画像を、ディストーションの補正と顔の検出を追加したサンプルです

利用したした web カメラは、サンワサプライの CMS-V27SET ×2です
ディストーションの補正に使用する設定ファイルは、このカメラであらかじめ作成しておいたものになります
接写用に補正がややきつくなっていますが、ほかのカメラでも補正した感じはわかると思います

ディストーション補正用の設定ファイルはカメラ毎に別途用意するべきですが、
サンプルではテストで利用したカメラが同じ製品のためコードの簡素化で敢えて共用しています
(同じ製品でもレンズの特性は若干異なる場合があり、安い製品の場合は特に品質にばらつきが大きい為)
(レンズ特性のばらつきを設定ファイルで補正できるレベルかどうかはさておき・・・・)

 

今回はおまけとしてサンプルコードに顔認識も追加していますが、こちらのコードは opencvsharp のサンプルコードをそのまま持ってきたものになりますので、特に解説は行いません

2台のカメラで同時に顔認識を行っているため処理もかなり重いです

 

 

Read more …

Categories: C#, OpenCV, プログラミング

複数カメラを利用したリアルタイム画像処理 Part2

Posted on 2010年9月28日 by Nymphaea
No Comments

前回の続きで、今回は2台の web カメラを利用した同時画像の読み取りを行います

今回利用した web カメラは、サンワサプライの CMS-V27SET を利用しています
(接写目的の web カメラって意外と見つからなかったのです)
次回掲載予定のディストーション補正では、このカメラを利用した場合の設定ファイルを利用します
(このカメラでなくとも、補正した感じはわかると思います)

 

web カメラを扱う方法としては、DirectX の Direct Show を利用した方法が真っ先に思いつくのですが、Direct Show は DirectX から Platform SDK (現在では Windows SDK)に移管されて以降、ほぼ目立った更新もなく現在では VC からでも若干扱いにくいままです

とはいえ、Direct Show 以外で web カメラを扱う方法は限られてしまう上に、フレームレベルでの操作を行えるものとなると、情報もほとんどないのが現状です

 

というわけで、Direct Show を使って web カメラを操作するしか道はなさそうなので、これを C# で扱う方法を考えます

ここでも C# からネイティブ DLL を呼ぶのはいろいろ面倒なので、ラッパーライブラリを探すと、Code Project に DirectShow.NET なるものが見つかります
(更新そのものは 2002 年で止まっているようです)
しかも、ライセンスは「パブリックドメイン」で公開されていますので、頒布の際にもライセンスを気にする必要がありません
※ソースをダウンロードする際には Code Project にユーザー登録をする必要がありますので注意してください

 

これで C# から web カメラを扱う方法が整ったので、実際にカメラを接続して画像を読み取ってみましょう

Read more …

Categories: C#, OpenCV, プログラミング

 

Previous Entries
Next Entries
  • 2025年5月
    日 月 火 水 木 金 土
     123
    45678910
    11121314151617
    18192021222324
    25262728293031
    « 3月    
  • 最近の投稿

    • raspberry pi に nginx をセットアップする
    • VSCode を日本語化する
    • raspberry pi に VSCode をインストールする
    • WindowsのプロダクトIDを取得する
    • SQL Server – money型とdecimal型を併用した金額計算
  • アーカイブ

    • 2020年3月
    • 2016年12月
    • 2014年6月
    • 2014年5月
    • 2013年7月
    • 2012年11月
    • 2012年7月
    • 2012年5月
    • 2012年4月
    • 2011年4月
    • 2011年1月
    • 2010年11月
    • 2010年10月
    • 2010年9月
    • 2010年8月
    • 2010年7月
    • 2010年6月
    • 2010年5月
    • 2010年4月
  • カテゴリー

    • C#
    • jQuery
    • OpenCV
    • raspberry pi
    • SharePoint
    • Silverlight
    • SQL Server
    • WCF
    • WPF
    • プログラミング
    • 未分類
    • 雑記
© astel-labs.net. Proudly Powered by WordPress | Nest Theme by YChong

このブログ内で公開されているソースコードおよびサンプルプログラムに関わるライセンスはすべて修正BSDライセンス(New BSD License)として公開しています。
但し、サンプルプログラムに含まれる外部アセンブリが同様のライセンスとは限りませんので、利用する前に必ずすべてのライセンスの確認を行ってください。