C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

GetGlyphOutline


(過去ログ 6 を表示中)

[トピック内 7 記事 (1 - 7 表示)]  << 0 >>

■6641 / inTopicNo.1)  GetGlyphOutline
  
□投稿者/ シン 二等兵(2回)-(2006/09/20(Wed) 17:25:01)

分類:[C#] 


分類:[C#] 

GetGlyphOutlineのWinAPI関数に
似たメソッドはC#にはないでしょうか?

0
引用返信 編集キー/
■6642 / inTopicNo.2)  Re[1]: GetGlyphOutline
□投稿者/ ダッチ 二等兵(15回)-(2006/09/20(Wed) 17:38:30)

分類:[C#] 

No6641に返信(シンさんの記事)
> GetGlyphOutlineのWinAPI関数に
> 似たメソッドはC#にはないでしょうか?

API の対応表であればこちらに乗っています。

Microsoft Win32 と Microsoft .NET Framework API との対応
http://www.microsoft.com/japan/msdn/net/general/win32map.aspx#win32map_fontandtextfunctions

見たところずばりこれというのはなさそうですね。

API を直接呼べばそれで済むのではないでしょうか。

0
引用返信 編集キー/
■6647 / inTopicNo.3)  Re[2]: GetGlyphOutline
□投稿者/ シン 二等兵(3回)-(2006/09/20(Wed) 20:21:13)

分類:[C#] 

DWORD GetGlyphOutline(
HDC hdc, //
UINT uChar, //
UINT uFormat, //
LPGLYPHMETRICS lpgm, //
DWORD cbBuffer, //
LPVOID lpvBuffer,//
CONST MAT2 *lpmat2 //
);

GetGlyphOutlineのWinAPI関数を呼び出すときC#にない型が存在しますが
どのように型をC#に合わせればいいのでしょうか?

0
引用返信 編集キー/
■6648 / inTopicNo.4)  Re[3]: GetGlyphOutline
□投稿者/ ダッチ 二等兵(17回)-(2006/09/20(Wed) 21:03:12)

分類:[C#] 

No6647に返信(シンさんの記事)
> DWORD GetGlyphOutline(
> HDC hdc, //
> UINT uChar, //
> UINT uFormat, //
> LPGLYPHMETRICS lpgm, //
> DWORD cbBuffer, //
> LPVOID lpvBuffer,//
> CONST MAT2 *lpmat2 //
> );
>
> GetGlyphOutlineのWinAPI関数を呼び出すときC#にない型が存在しますが
> どのように型をC#に合わせればいいのでしょうか?

API の定義で困ったら

Pinvoke.net
http://www.pinvoke.net/default.aspx/gdi32/GetGlyphOutline.html

というサイトがあります。
こちらにさまざまな API の定義や
API を使用したサンプルコードなどがありますので
ぜひ利用して見てください。


0
引用返信 編集キー/
■6722 / inTopicNo.5)  Re[4]: GetGlyphOutline
□投稿者/ シン 二等兵(4回)-(2006/09/22(Fri) 16:47:59)

分類:[C#] 

IntPtr buffer;
uint ret;
ret = GetGlyphOutline(hdc, (uint)c, (uint)2, out metrics, (uint)bufferSize, buffer, ref matrix);

これでbufferにビットマップの情報が代入されましたが
このbufferを読み取る方法がわからないので教えてもらえませんか?
IntPtr型の場合どのように読み取ればいいのでしょうか?

0
引用返信 編集キー/
■6740 / inTopicNo.6)  Re[5]: GetGlyphOutline
□投稿者/ シン 二等兵(5回)-(2006/09/23(Sat) 02:38:46)

分類:[C#] 

IntPtr buffer;
uint ret;
ret = GetGlyphOutline(hdc, (uint)c, (uint)2, out metrics, (uint)bufferSize, buffer, ref matrix);

このIntPtr型のbufferをByte配列型に変える事はできませんか?
そしたらByte配列に入っているフォントのビットマップを読み取る事が
出来ると思うのですがどうしたらいいでしょうか?



0
引用返信 編集キー/
■6751 / inTopicNo.7)  Re[6]: GetGlyphOutline
□投稿者/ だく 二等兵(9回)-(2006/09/23(Sat) 18:44:15)

分類:[C#] 

bufferはIntPtr型であって、ここにビットマップデータが入ってる
わけではなく、データがある場所を示すポインタですよね。
データの場所とバッファのサイズが分かってれば、
Marshal.Copy でByte型の配列にコピーする事ができるかと思います。
試してないで回答してます。ダメだったらごめんなさい。


0
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -