var mat = new System.Drawing.Drawing2D.Matrix();
// (20,30)を中心に30°回転(通常のメソッド)
mat.RotateAt(30, new PointF(20, 30), System.Drawing.Drawing2D.MatrixOrder.Append);
// (100, 150)を中心にX方向に2倍、Y方向に3倍(拡張メソッド)
mat.ScaleAt(2, 3, new PointF(100, 150));
C#6.0(Visual Studio 2015)からは$を使った文字列の書式設定を行う事ができます。
C#6.0より前では、String.Format を使って
double a = 355;
double b = 113;
double c = a / b;
var str = String.Format("a = {0}, b = {1}, a / b = {2}", a, b, c);
Console.WriteLine(str); // a = 355, b = 113, a / b = 3.14159292035398
と書いていたところを、C#6.0からは $”{xxx}” を使って
double a = 355;
double b = 113;
double c = a / b;
var str = $"a = {a}, b = {b}, a / b = {c}";
Console.WriteLine(str); // a = 355, b = 113, a / b = 3.14159292035398
double a = 355;
double b = 113;
double c = a / b;
var str = $"a = {a:F3}, b = {b:F3}, a / b = {c:F6}";
Console.WriteLine(str); // a = 355.000, b = 113.000, a / b = 3.141593
私が本格的にC#を始めたのはC#2.0(Visual Studio 2005)からなのですが、会社でプログラムをしていると、お客様向けのサンプルプログラムを作成することから、むやみにVisual Studioのバージョンを上げる事もできず、Visual Studio 2005をかなり長い事使用してきました。
現在ではVisual Studio 2015をメインに使用しているのですが、C#の構文はC#2.0をひきずっておりまして。。
最近では、お客様が使っているVisual Studioは古くてもVisual Studio 2010ぐらいでしょうか。
var src = new Bitmap("Lena.bmp");
var gray = ImagingDotNet.CvtColor(src, ImagingDotNet.COLOR_BGR2GRAY);
var dst = (Bitmap)src.Clone();
ImagingDotNet.Threshold(gray, dst, 128, 255, ImagingDotNet.THRESH_OTSU);