Windows Magnification API を使用して、.net で拡大鏡アプリを作成しようとしています。実際に倍率レベルを設定することを除いて、ほとんどすべてが機能しています(デフォルトは100%です)。問題は、ネット上のどこにも例が見つからず、API のすべてのドキュメントが C++ コードであることです。これは私が問題を抱えている特定の機能です。
bool SetMagFactor(float magfactor)
{
MAGTRANSFORM matrix;
memset(&matrix, 0, sizeof(matrix));
matrix.v[0][0] = magfactor;
matrix.v[1][1] = magfactor;
matrix.v[2][2] = 1.0f;
return MagSetWindowTransform(hwndMag, &matrix);
}
MAGTRANSFORM 構造体は次のように定義されます。
typedef struct tagMAGTRANSFORM {
float v[3] [3];
} MAGTRANSFORM, *PMAGTRANSFORM;
これの最も紛らわしい部分は memset です - それが何をするのか、.NET でそれに相当するものがあるのか わかりませんが、多次元配列/行列と、.NET でもこれをどのように処理するかについても混乱しています。
どんな助けでも大歓迎です。