質問編集履歴

1

質問の追記

2020/09/16 03:15

投稿

qkazooing
qkazooing

スコア22

test CHANGED
File without changes
test CHANGED
@@ -39,3 +39,89 @@
39
39
  長方形の中にテストという文字を出したいのですが、長方形だけ出力されて、textのテストが出力されません。
40
40
 
41
41
  エラーメッセージも特になく困っています。ご教授お願い致します。
42
+
43
+
44
+
45
+ **追記**
46
+
47
+ ```ここに言語を入力
48
+
49
+ class A:
50
+
51
+ def __init___(self):
52
+
53
+ self.img = ""
54
+
55
+     省略
56
+
57
+ def draw_text_with_box(img, origin, text, fontsize=20, color="red"):
58
+
59
+ # フォントを作成する。
60
+
61
+ font = ImageFont.truetype("ipag.ttc", size=fontsize) # 使用フォントは変更してください
62
+
63
+
64
+
65
+ draw = ImageDraw.Draw(img, mode="RGBA")
66
+
67
+
68
+
69
+ # テキストの大きさを取得する。
70
+
71
+ size = draw.textsize(text, font=font)
72
+
73
+ # テキストを囲む矩形を描画する。
74
+
75
+ draw.rectangle(
76
+
77
+ (origin, (origin[0] + size[0] - 1, origin[1] + size[1] - 1)),
78
+
79
+ outline="black",
80
+
81
+ width=2,
82
+
83
+ )
84
+
85
+ # テキストを描画する。。
86
+
87
+ draw.text(origin, text, fill=color, font=font)
88
+
89
+ def name(data)
90
+
91
+ img = Image.fromarray(cv2.cvtColor(data.img, cv2.COLOR_BGR2RGB)) # RGB に並び替え必要
92
+
93
+ draw_text_with_box(img, (30, 30), text_name, color="blue", fontsize=30)
94
+
95
+
96
+
97
+ def B(file):
98
+
99
+ img = cv2.imread(file)
100
+
101
+ cv.imshow('image',img)
102
+
103
+ with open(file,'rb') as file_image:
104
+
105
+ source_bytes = file_image.read()
106
+
107
+ data = A()
108
+
109
+ data.img = img
110
+
111
+ image(data)
112
+
113
+ cv2.imshow('image',data.img)
114
+
115
+ def main():
116
+
117
+ B(file)
118
+
119
+
120
+
121
+
122
+
123
+ ```
124
+
125
+ 一部省略していますが、def nameでtext_nameを取得するためにdataを引数としています。
126
+
127
+ また、(30,30)の部分を変更するためにものちにdataを使います。