質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

String

Stringは、ゼロ以上の文字から連続してできた文字の集合を扱うデータ型です。基本的にテキストを表すために使われます。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

0回答

1386閲覧

C++ stringに入力した文字を画面に描画する方法を教えてください。

keigo1998

総合スコア0

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

String

Stringは、ゼロ以上の文字から連続してできた文字の集合を扱うデータ型です。基本的にテキストを表すために使われます。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

1クリップ

投稿2020/11/22 15:53

string型に追加した文字を画面に描画する方法を教えてください。
言語はC++です。OpenCVで画面描画をしています。

追加で、mainの中を繰り返す方法も教えてください。
よろしくお願い致します。

using namespace std;
using namespace cv;
using namespace sc::myCV;

//文字の定義
int x = 0;
int y = 0;
int DateY;
int DateX;
int date = 0;
int iDate;
int a = 0;
int b = 0;
int c = 0;

// 色の設定
Scalar red(0, 0, 255), green(0, 255, 0), blue(255, 0, 0); // 赤、緑、青
Scalar gray = Scalar(128, 128, 128); // グレー
Scalar dgray = gray / 4; // ダークグレー
Scalar white = Scalar::all(255); // 白
Scalar black = Scalar::all(0); // 黒
Mat img(Size(1364, 703), CV_8UC3, white); // 描画領域(画像)

// 画面の定義
void main();
void menu();
void agyo();
void clearwhite(void);
string text;
string text2;

void main()
{
menu();
a = 0;

if (a == 0) { puts("数字を入力してください。"); scanf("%d", &a); if (a == 1) { clearwhite(); agyo(); b = 1; } } if (b == 1) { puts("数字を入力してください。"); scanf("%d", &c); if (c == 1) { text2 = "あ"; } else if (c == 2) { text2 = "い"; } else if (c == 3) { text2 = "う"; } else if (c == 4) { text2 = "え"; } else if (c == 5) { text2 = "お"; } else if (c == 0) { } clearwhite(); menu(); a = 0; b = 0; c = 0; }

}

void menu()
{
text;

rectangle(img, Point(142, 27), Point(1114, 135), black); // 文字列入力長方形描画 rectangle(img, Point(1114, 27), Point(1222, 135), black); // 消去選択長方形描画 circle(img, Point(115, 351), 54, black); // はい選択円描画 circle(img, Point(115, 513), 54, black); // いいえ選択円描画 circle(img, Point(358, 270), 54, black); // あ行円描画 circle(img, Point(574, 270), 54, black); // か行円描画 circle(img, Point(790, 270), 54, black); // さ行円描画 circle(img, Point(1006, 270), 54, black); // た行円描画 circle(img, Point(358, 432), 54, black); // な行円描画 circle(img, Point(574, 432), 54, black); // は行円描画 circle(img, Point(790, 432), 54, black); // ま行円描画 circle(img, Point(1006, 432), 54, black); // や行円描画 circle(img, Point(358, 594), 54, black); // ら行円描画 circle(img, Point(574, 594), 54, black); // わ行円描画 circle(img, Point(790, 594), 54, black); // 濁点円描画 circle(img, Point(1006, 594), 54, black); // 小文字円描画 circle(img, Point(1222, 270), 54, black); // 1字消円描画 circle(img, Point(1222, 432), 54, black); // 発音円描画 circle(img, Point(1222, 594), 54, black); // 50音円描画 putText_Jpn(img, "×", Point(1108, 104), "MSゴシック", 2.5, black); // ×描画 putText_Jpn(img, "はい", Point(70, 361), "MSゴシック", 1, red); // はい描画 putText_Jpn(img, "いいえ", Point(68, 523), "MSゴシック", 0.7, blue); // いいえ描画 putText_Jpn(img, "あ", Point(318, 285), "MSゴシック", 2, black); // あ描画 putText_Jpn(img, "か", Point(532, 285), "MSゴシック", 2, black); // か描画 putText_Jpn(img, "さ", Point(753, 288), "MSゴシック", 2, black); // さ描画 putText_Jpn(img, "た", Point(960, 285), "MSゴシック", 2, black); // た描画 putText_Jpn(img, "な", Point(313, 448), "MSゴシック", 2, black); // な描画 putText_Jpn(img, "は", Point(526, 447), "MSゴシック", 2, black); // は描画 putText_Jpn(img, "ま", Point(746, 448), "MSゴシック", 2, black); // ま描画 putText_Jpn(img, "や", Point(956, 449), "MSゴシック", 2, black); // や描画 putText_Jpn(img, "ら", Point(323, 612), "MSゴシック", 2, black); // ら描画 putText_Jpn(img, "わ", Point(530, 612), "MSゴシック", 2, black); // わ描画 putText_Jpn(img, "゛゜", Point(750, 626), "MSゴシック", 2, black); // 濁点描画 putText_Jpn(img, "小", Point(976, 604), "MSゴシック", 1.25, black); // 小文字描画 putText_Jpn(img, "1字消", Point(1172, 277), "MSゴシック", 0.75, black); // 1字消描画 putText_Jpn(img, "発音", Point(1180, 439), "MSゴシック", 0.9, black); // 発音描画 putText_Jpn(img, "50音", Point(1180, 601), "MSゴシック", 0.9, black); // 50音描画 imshow("グラフィック描画", img); waitKey();

}

void agyo()
{
// あ行選択画面
circle(img, Point(142, 270), 54, black); // あ円描画
circle(img, Point(142, 54), 54, black); // い円描画
circle(img, Point(358, 54), 54, black); // う円描画
circle(img, Point(574, 54), 54, black); // え円描画
circle(img, Point(574, 270), 54, black); // お円描画
circle(img, Point(1222, 594), 54, black); // 50音円描画

putText_Jpn(img, "あ", Point(102, 285), "MSゴシック", 2, black); // あ描画 putText_Jpn(img, "い", Point(97, 74), "MSゴシック", 2, black); // い描画 putText_Jpn(img, "う", Point(333, 69), "MSゴシック", 2, black); // う描画 putText_Jpn(img, "え", Point(529, 69), "MSゴシック", 2, black); // え描画 putText_Jpn(img, "お", Point(527, 285), "MSゴシック", 2, black); // お描画 putText_Jpn(img, "50音", Point(1180, 601), "MSゴシック", 0.9, black); // 50音描画 imshow("グラフィック描画", img); waitKey();

}

void clearwhite(void)
{
rectangle(img, Point(0, 0), Point(DISPLAY_SIZE_X, DISPLAY_SIZE_Y), white, -1, LINE_AA);
imshow("グラフィック描画", img);
waitKey(1);
}//void clearwhite(void)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2020/11/22 22:43

提示のコードではどういう動作になるんでしょう。 で、どういう不具合があるんでしょうか
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問