Skip to main content

C#で文字列のサイズを正しく測定する(Measure String)

.NETのGraphics.MeasureStringメソッドを利用すると文字列のサイズを測定できますが、通常の方法での測定結果に少しずれが発生します。ここでは正確の測定結果を得る方法を説明します。

まずテスト環境を作成します。新しいWindows Formプロジェクトを作成し、Formのコードを以下のように準備します。(Form7をForm1に変更してください)

public partial class Form7 : Form
{
  public Form7()
  {
    InitializeComponent();
    Font = new Font(Font.FontFamily, 14);
    Size = new Size(300, 250);
  }

  protected override void OnPaint(PaintEventArgs e)
  {
    base.OnPaint(e);    var g = e.Graphics;
    var str = "文字列を測定する";    
    
    // ----ここはテストコード----
  }
}

(more…)

Global.asaxのApplication_Errorが呼び出されない

開発環境でGlobal.asaxのApplication_Errorでエラー処理を実装して正常に動作しましたが、本番環境で動作しません。いろいろ試したら、IIS7以降のWebSiteの設定について、Web Applicationのアプリケーションプールを「Classic .NET AppPool」に切替すると問題が解消しました。

さらに試したら、実際そのアプリケーションプールの設定の「パイプラインモード」という設定を「クラシック」にすれば問題解消します。

このようにGlobal.asaxのApplication_Errorでアプリケーション全体のエラーを処理することができます。

public class Global : System.Web.HttpApplication
{
  protected void Application_Error(object sender, EventArgs e)
  {
    Exception ex = Server.GetLastError();

    if (ex is HttpUnhandledException)
    {
      // ...
    }
  }
}

(more…)

Windows 8を速やかにShutdownする方法

Windows 8はスタートメニューがなくなり、シャットダウンボタンも右側のパネルに隠され、以前よりシャットダウンまでの手間が掛かるようになりました。

ただもしDesktopモードを利用しているなら、Alt+F4でシャットダウン画面を呼び出せます。このHotkeyを利用すると大部便利になります。

win8_shutdown

Linuxサーバーを介してインターネットをアクセスする

LinuxサーバーへのSSHログインの権限があれば、そのサーバーを介してインターネットにアクセスすることができます。

PuttyというSSHクライアントソフトを利用し、ローカルProxyサーバーの構築ができます。

Puttyのダウンロード先:http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html (putty.exeを選択する)

ダウンロードが終わったらputtyを起動します。以下のような手順で設定を行います。

ssh-proxy-01

(more…)

Excel 2013 の動画カーソルを停止する方法

Windowsのレジスタに以下の値を追加するカーソルなどのアニメーションを停止することができます。

HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Common\Graphics
"DisableAnimations"=dword:00000001

解除したい場合、値を0に変更するか、そのデータ自体を削除すれば解除できます。

【自動修正ファイル】

操作できない方、ネコ技術はダブルクリックで修正できるファイルを提供します。

こちらからダウンロードし実行してください。

自宅のペットを遠隔監視するシステムを構築する

自宅にいないとき、うちのネコちゃんを見たいことがあります。それで手元にあるRaspberry Piを利用して、遠隔監視できるシステムを作ってみました。

必要なものは以下の通りです。

【ハードウェア】

  • Raspberry Pi B Type
  • SDカード
  • WebCam Logicool C270 – 公式サイト
  • LANケーブル or Wifi アダプター

【ソフトウェア】

  • Motion – オンラインWebCamサーバーおよび移動検出ソフト(無料)
  • MJPEGPlayer – ネコ技術オリジナル提供(無料)

また、初期設定の時以下を用意する必要があります。

  • HDMIケーブル
  • USBキーボード

(more…)