読者です 読者をやめる 読者になる 読者になる

SourceChord

C#とXAML好きなプログラマの備忘録。最近はWPF系の話題が中心です。

OpenCvSharpで顔検出

今度は顔検出をやってみました。 OpenCvSharpのサンプルコードをベースにちょっと書き換えただけですが、意外とシンプルなコードで書けるもんですね。 今回は程よいサンプル画像がないので、コードだけφ(..)メモメモ

OpenCvSharpで透視投影の補正

OpenCvSharpを使って、透視変換を行ってみました。

WPFでホットキーの登録

WPFでホットキーの登録を行うサンプルを書いてみました。 Win32のRegisterHotKey/UnregisterHotKeyというAPIを呼び出すことで、ホットキーの登録/登録解除ができます。 このAPIでホットキーを登録しておくと、アプリがアクティブでないときでも有効なグロー…

WPF用にNotifyIconクラスをラップしてみた

C#で常駐アプリなどを作り、タスクトレイにアイコンを出す場合には、Win Formsで用意されているNotifyIconというクラスを使います。 以前、このクラスを使って常駐アプリを作る方法を↓に書きました。 この方法だと、使うたびにWinFormsのデザイナを利用して…

そのReactほんとに必要ですか?~もうすぐElectronで使えるようになるWeb Componentsの世界~

この記事はelectronアドベントカレンダー 2016 21日目の記事です。 遅くなってしまい申し訳ありません。。。

WPF/UWP向けに、グリッドレイアウト補助ライブラリを作ってみました~GridExtra~

この記事はXAMLアドベントカレンダー 2016 18日目の記事です。 WPF/UWP向けに、グリッドレイアウトに役立つクラス類を提供するライブラリを作りました。 今のところ、この二つのクラスだけですが、今後少しずつ色々なパネルを追加していきたいと思っています…

.Net 4.6.2以降でのWPFのPer-Monitor DPI対応

この記事はXAMLアドベントカレンダー 2016 14日目の記事です。 WPFでは、ボタンをはじめとする各種UI要素はベクターベースでの描画を行っています。 そのため、WinFormsやMFCなどのGDI系のUIフレームワークと違い、High-DPIな環境でもボケずにキレイな描画が…

.Net 4.6.2でのWPFのソフトキーボード対応の改善

WPF

この記事はXAMLアドベントカレンダー 2016 4日目の記事です。 今まで、WPFのTextBoxはタップしても、ソフトキーボードが表示されませんでした。 ですが、.Net4.6.2でソフトキーボードのサポートが強化され、テキストボックスタップ時に自動でソフトキーボー…

Visual StudioのXAMLエディタの地味に便利な機能

この記事はXAMLアドベントカレンダー 2016 3日目の記事です。 この記事では、Visual StudioのXAMLエディタの機能で、そこそこ便利なんだけど、あまり知られて無さそうなものをいくつか紹介したいと思います。 VS2015に搭載されている機能を紹介しているので…

Debug時とRelease時のXAML表示内容を切り替える方法

この記事はXAMLアドベントカレンダー 2016 2日目の記事です。 ちょっと予定を変更して、本日はXAMLの小ネタ。 XAML上で、以下のような表示切替をしてみます。 Debug/Releaseモードに応じて表示内容を切り替える VSのデザイナ上での実行orアプリとしての実行…

XAMLアドベントカレンダー 作りました

この記事はXAMLアドベントカレンダーの1日目の記事です。 XAMLに関するアドベントカレンダーが無さそうなので作りました。 数日前にチェックしたときにはUWPカレンダーがあった気がするのですが、書こうと思いチェックしてみたら無くなってしまってました・…

Visual Studio Code 1.7の新機能・変更点

VSCode 1.7.1がリリースされました。 http://code.visualstudio.com/updates/v1_7 1.7ではpackage.jsonを見て、依存するライブラリの型定義ファイルを、npmの@typesスコープから自動でダウンロードする機能を導入していたそうです。 しかし、この機能がnpmに…

.NET Coreことはじめ~その5・ミドルウェア~

今回はミドルウェアASP.NET Coreのミドルウェアの概念について学んでいきます。

.NET Coreことはじめ~その4・サーバーの各種設定~

今回は、Startupクラスの各種関数内で、色々なサーバーの設定をしてみたいと思います。

.NET Coreことはじめ~その3・最小構成のWebサーバー~

今回は、.NET Coreで最小構成のWebサーバーを作ってみます。 ただし、まだASP.NET Coreのプロジェクトの雛形などは使わず、一から書き始めてみます。 参考サイト 今回は、公式ページのチュートリアルを参考に、最小構成のサーバーを実装するところまで。 htt…

VSCode向けのTypeScript 2.0 + Electronサンプル

以前作ってみたTypeScript + Electronのサンプルプロジェクトですが、TypeScript2.0を使うように色々更新しました。 TypeScript 2.0.3に更新 Electron 1.4.4に更新 型定義ファイルの取得を、typing⇒@typesでの取得に変更 VSCode用の各種設定ファイル類を更新…

.NET Coreことはじめ~その2~

前回に引き続き、.NET Coreを使ったプロジェクトの基本を見ていきます。 今回はファイルや依存ライブラリの追加、ビルド時の各種設定などを見ていきます。

.NET Coreことはじめ

RTMになってからしばらく経ちますが、ちょっとやってみたのでφ(..)メモメモ .NET Coreというと、ASP.NET Core向けのチュートリアルが多いですが、 ASP.Net Coreを使っていきなりWebサーバーを作ると、多くのファイルが一気にでてきて理解が難しくなりそうで…

UWP Community Toolkit 1.1がリリースされました

github.com UWP Community Toolkit 1.1がリリースされました。 このライブラリの初回の月例アップデートですね。 今回追加された中で、面白そうなものをいくつか使ってみました。

NeDB + TypeScriptで、asyncな非同期呼び出しをしてみる

この間使ってみたNeDB、 とても便利なんですが、各種APIがcallback形式のものとなっていて、、安易にコールバック地獄に突入してしまいそうな雰囲気を感じます。 NeDBを使ってNode.js環境でお手軽にNoSQLのDBを使ってみる - SourceChord せっかくTypeScript…

Visual Studio Code 1.6の新機能・変更点

VSCode 1.6がリリースされました。 https://code.visualstudio.com/updates/v1_6 今回は割と変更点は少な目ですが、個人的に気になった新機能や変更点などをメモしておきます。

SSDに換装してみた

メインで使用しているデスクトップPCのHDDが、SMARTの警告を吐くようになり、そろそろヤバそうなので重い腰を上げてSSDに換装しました。 OSもWin8⇒8.1⇒10とアップデートを繰り返していたので、クリーンインストールするいいタイミングな気もしたので。。。

NeDBを使ってNode.js環境でお手軽にNoSQLのDBを使ってみる

Node.jsでNoSQLなDBを使うときは、MongoDBなどと組み合わせるのがよくあるパターンかと思います。 ただ、MongoDBは別途インストールが必要なので、ちょっとNoSQLなDBのお勉強という程度で使うには少し面倒です。 また、OS環境へのインストールが必要というこ…

TypeScript2.0での型定義ファイルの管理

とうとう出ました、TypeScript2.0!! TypeScript 2.0 is now available! | TypeScript メジャーバージョンアップなので変更点はたくさんありますが、個人的に一番気になっていた、npmからの型定義の取得を試してみます。 参考リンク TypeScript2.0での変更点…

UWP Community Toolkitを使ってみた

先日MSが、こんなライブラリを公開してました。 https://blogs.windows.com/buildingapps/2016/08/17/introducing-the-uwp-community-toolkit/#ezOozvSa1jfh3Er2.97 てことで、さっそく使ってみました。 概要・UWP Community Toolkitとは 公式のサンプルアプ…

ResponsiveGrid 0.3.2をリリースしました

先日リリースしたResponsiveGrid 0.3.1で、以下のような不具合がありました。 パネル内の要素数が0個の時、例外を吐いて終了する ということで、修正して0.3.2としてリリースしました。 この間バグ対応して0.3.1を作った時に、MeasureOverrideの中の処理を作…

Visual Studio Code 1.5の新機能・変更点

VSCode 1.5がリリースされました。1.5では不具合があったようで、リリース後に速攻でバグフィックス版の1.5.1もリリースされてます。 今回も新機能・変更点で、個人的に気になった点などをメモしときます。 https://code.visualstudio.com/updates/v1_5

ResponsiveGrid 0.3.1をリリースしました

以前、WPF/UWP向けにResponsiveGridというライブラリを作りました。 このライブラリですが、GitHubのIssuesで不具合報告もらったので修正してリリースしました。 今回のアップデートはバグフィックスのみです。

OpenCVで浮動小数点形式の画像バッファを使ってみる

今までのサンプルコードでは、CV_8UC3のよう形で各要素ごとunsigned charなデータで画像バッファを扱っていました。 OpenCVでは、Mat型のインスタンスを作成するときの引数指定で、 16bit整数型や浮動小数点型などの形式のバッファも作れるようになっていま…

OpenCvSharpでマウス・キーボード入力を扱う

OpenCVで作成したウィンドウで、マウスやキーボードの入力を扱ってみます

OpenCVでパラメータ操作用ウィンドウを作ってみる

以前、OpenCVSharpで作成したウィンドウに、スライダーを付けてみました。 http://sourcechord.hatenablog.com/entry/2016/08/21/202200 このスライダーを活用し、スライダーだけが並んだウィンドウを作ることができます。 画像を表示しているウィンドウ上に…

OpenCVで色々な画像生成

今回もOpenCvSharpネタ。 今度はちょっと脱線気味。 OpenCVでピクセル操作や図形描画機能を使って、いろんな画像を生成してみます。

画像をHSV色空間に変換して表示

引き続き、OpenCvSharpネタです。 CvtColor関数で、通常のRGB色空間の画像データから、HSV色空間のデータに変換できます。

OpenCvSharpで作成したウィンドウにスライダーを付けてみる

OpenCvSharpで作成したウィンドウに、スライダーを付けてみます。

OneNote2010で、OneDrive上のノートブックが同期できない問題【解決済み?】

数日前に、自分のメインPCで利用しているOneNote2010を開いたら、全てのセクションが消えてしまう、という現象が起きました。 一瞬、全部のセクションやページが消えたのか、、、と思い焦りましたが、ブラウザからOneNote Onlineのページを見てみると、ノー…

OpenCvSharp3入門

前回に続き、再度OpenCvSharpネタです。 色々使ってみたので、使い方などを一通りメモしときます。 参考情報 OpenCvSharpのC++API対応についての説明 http://schima.hatenablog.com/entry/2014/03/29/140106 OpenCvSharpのWiki。ここのC++ APIの部分など。 h…

OpenCvSharp3を使ってみた

以前、C#からOpenCVを扱うためのラッパーライブラリのOpenCvSharpというライブラリを使ってみました↓ http://sourcechord.hatenablog.com/entry/2014/09/22/010344 OpenCV3.0に対応した、このライブラリの新バージョンOpenCvSharp3を使ってみたのでφ(..)メモ…

W700DをWin10 Anniversary Updateに更新してみた

手持ちのサブ機のW700DもWindows10 Anniversary Updateに更新してみました。 以前Win10に更新したときは、↓のようにプリインストールアプリとの相性問題などもありましたが、 このとき問題になってたアプリは無効化しているので、今回は特に問題なく使えてい…

Visual Studio Code 1.4の新機能・変更点

VSCode 1.4がリリースされました。 今回も、個人的に気になる新機能・変更点をメモしときます。 先月の1.3では新機能盛りだくさんだったこともあり、今回の更新は変更点控えめです。

NTVS 1.2 をインストールしてみた

Visual StudioでNode.jsアプリ開発を行うための拡張機能のNode.js Tools for Visual Studio(NTVS)ですが、コイツの新バージョンNTVS 1.2がリリースされてます。 インテリセンスのためのTypeScript/JavaScriptコード解析エンジンが更新されたようで、劇的にパ…

Windows10 Anniversary Updateに更新

さっそくアップデートしてみました。 自分のメインPCはずいぶん古いので、WindowsUpdateではまだ降ってきません。 ということで、Windows10 更新アシスタントを使ってアップデートを行います。

typescriptのasync/awaitで生成されるコードを見てみる

この間、async/awaitを試しに使ってみたときの、↓のコード。 http://sourcechord.hatenablog.com/entry/2016/07/28/084127 トランスパイルすると、どんなコードが吐き出されるのか見てみました。

TypeScriptでasync/awaitを使ってみた

そういえば、今までTypeScriptのasync/awaitを使ってなかったので、使い方を軽くφ(..)メモメモ TypeScript1.x系では、ES3/ES5向けのときはasync/awaitは使えないので、ちょっと敬遠してましたが、 Node.js環境だったら普通に使えるだろうし、、ということで…

monaco-editorをelectron環境で使ってみた

前回に引き続き、monaco-editorネタです。 今回は、monaco-editorをelectron環境で使ってみました。 プロジェクト一式は以下のリポジトリに置いています。 github.com 参考リンク monaco-editorのサンプル類が置かれた、以下のリポジトリを参考にやってみま…

monaco-editorを使ってみた

VSCode1.3のリリースと一緒に、monaco-editorのnpmパッケージが公開されました。 てことで、さっそく使ってみました。 実際に動かしてみると、想像以上のクオリティのテキストエディタが一瞬で組み込めてビックリしました!! 今まで、HTMLとJavaScriptでテキ…

Visual Studio Code 1.3の新機能・変更点

毎月の月例アップデートですが、VSCode1.3がリリースされたので、今回も個人的にコレは!!と思った新機能や変更点をまとめておきます。 code.visualstudio.com VSCodeも1.0リリース移行は色々な変更は落ち着いてくるのかな、と思ってたのですが、そんなことは…

WPF/UWP用にBootstrap風Gridレイアウトを行うライブラリを作ってみた~ResponsiveGrid~

超定番cssフレームワークBootstrapのグリッドシステムのようなレイアウトをXAML環境で行うためのライブラリを作ってみました。 WPF/UWPともに、Nugetから以下のパッケージをインストールすることで使えます。 NuGet Gallery | ResponsiveGrid 0.3.1 (WPF/UWP…

WPFでの入力値検証・まとめ

今まで何回かに分けて書いてきたWPFのバリデーション関係ネタについて、自分でもわりと見返すので、この入力値検証関連の記事をまとめておきます。 あと、各種バリデーション方法のサンプルコード一式を、以下のリポジトリに上げておきました。 色々書いたブ…

WPFでの入力値検証・その9 ~エラー表示のローカライズ~

ずいぶん久しぶりだけど、WPFの入力値検証ネタ。 以前↓みたいなのをやりましたが、 このDataAnnotationsを使ったバリデーションを行う際に、エラーメッセージのローカライズをしてみました。

Visual Studio Code 1.2の新機能・変更点

今月も月例のアップデートがリリースされました。 https://code.visualstudio.com/updates#vscode 個人的には、vscode内にターミナルが統合されたのがうれしい!! 今回も、個人的に目ぼしい変更点をピックアップしてまとめておこうと思います。