私はncursesを使ってRaspberry Piの端末プログラムを作成しています。私はボックスの周りに影を追加したい。私はmvaddch()
を使用して、char 233(上半分のボックス文字)などの拡張文字を印刷したいと考えています。 mvaddch()
コマンドの構文は何ですか?それともこれを達成する別の方法がありますか?gcc ncursesはcharなどの文字を拡張します(グリフ)223
1
A
答えて
1
おそらく、code page 866のようなものを指しているでしょう。 ncursesはあなたの端末がlocale encoding(おそらくUTF-8)と一致する文字を表示すると仮定します。だから(あなたのプログラムの文字を変換しない限り)行く方法は、Unicodeの値を使用しています。
ユニコード組織には、特定のコードを検索するためのテーブルがあります(例:ftp://ftp.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/PC/CP866.TXT)。たとえば、関連する行は
0xdf 0x2580 #UPPER HALF BLOCK
(0xdfは223なので)です。関数mvaddwstrの呼び出しで、Unicode 0x2580
を使用します。
wchar_t mydata[] = { 0x2580, 0 };
mvaddwstr(0,0, mydata);
(wadd_wch
同様の名前は、より複雑なデータ構造を使用します)。
あなたは ncurseswライブラリにリンクする必要があり、そしてもちろんinitialize your program's locale using setlocale
のncursesベースのマニュアルページで述べたようになります。
関連する問題
- 1. 構造体からncurses拡張文字を使用する
- 2. 拡張キーをトラップするncurses
- 3. GCCベクトル拡張は、オペレータ
- 4. SSE(SIMD拡張)gccの
- 5. GSMの拡張文字
- 6. C - GCC SSEベクトル拡張
- 7. C++拡張ASCII文字
- 8. Pythonのテンプレートの文字列を拡張
- 9. GCCベクター拡張でのメモリーアライメントの問題
- 10. gccでcプログラミング言語を拡張
- 11. Java Generic?文字列を拡張します
- 12. 文字列に拡張機能を作成しますか?
- 13. watir-webdriverの拡張文字のテスト
- 14. 拡張ASCIIまたはutf-8文字を受信するTCP
- 15. Cython拡張タイプのPython文字列
- 16. Code :: Blocksの拡張Ascii文字C++
- 17. 継承のない文字列クラス関数を拡張する
- 18. PyCharm Cythonデバッガ拡張コンパイル - gccエラー
- 19. 小文字の "jpg"とは異なる大文字の "JPG"拡張子はありますか?
- 20. 文字列の値を拡張メソッドに置き換えます
- 21. 表は、長い文字列にすぎ拡張しており、
- 22. 拡張後に不要な文字を削除する
- 23. "unsigned char *"を "char *"(そして文字列)に変換する
- 24. 文字拡張ASCII表示PHP
- 25. ncursesメニュー - ユーザ入力の文字列を表示しません
- 26. ESC文字を使用してGSM 03.38拡張文字セットにアクセスする
- 27. char *に文字を渡し
- 28. ncursesで特殊文字をキャッチ
- 29. Pythonで文字列内のすべての文字列を拡張する
- 30. 文字列がcharの場合、strtok_sがプログラムをクラッシュします*