質問編集履歴

2

タイトルの変更

2019/06/13 07:05

投稿

sekaikan_ozaki
sekaikan_ozaki

スコア65

test CHANGED
@@ -1 +1 @@
1
- Android 続・mask処理で2枚の画像の重る部分のみ抜き取りた
1
+ Android mask処理でPorterDuff.Mode.XORができない
test CHANGED
File without changes

1

本日の追記、追加検証

2019/06/13 07:05

投稿

sekaikan_ozaki
sekaikan_ozaki

スコア65

test CHANGED
File without changes
test CHANGED
@@ -57,6 +57,20 @@
57
57
  しかし、手順3が終了して、得られた画像は真っ白な画像になっている。。
58
58
 
59
59
  ↑これが原因不明ということでなんとか解決したいです。
60
+
61
+
62
+
63
+ **6/13追記**
64
+
65
+ >手順2が終了した時点でアプリ上では、思い通りピンクの線が表示されて、周りが白く(透明だということ)なっていた。
66
+
67
+ アプリ画面上では、そのようなImageViewとして表示されていたが、実際に「変更後の画像1(maskImage)」をストレージに保存して確認してみると、真っ黒の画像になっていた。
68
+
69
+
70
+
71
+ >しかし、手順3が終了して、得られた画像は真っ白な画像になっている。
72
+
73
+ こちらもアプリ画面上でこのように見えたが、手順3が終了した時点での「最終的な画像(resultImage)」も念のためストレージに保存して確認してみると、真っ黒な画像になっていた。
60
74
 
61
75
 
62
76
 
@@ -120,17 +134,17 @@
120
134
 
121
135
 
122
136
 
123
- //imageView.setImageBitmap(maskImage);//手順2終わり、ここでは期待通りのXORができている
137
+ //imageView.setImageBitmap(maskImage);//手順2終わり、ここでは期待通りのXORができている思っていたが、そうではないのかもしれない
124
138
 
125
139
 
126
140
 
127
141
  Bitmap mainImage = MediaStore.Images.Media.getBitmap(getContentResolver(),cameraUri);//カメラで撮った画像を読み込んでbitmapとして取り出す
128
142
 
129
- Bitmap result = Bitmap.createBitmap(mainImage.getWidth(), mainImage.getHeight(), Bitmap.Config.ARGB_8888);
143
+ Bitmap resultImage = Bitmap.createBitmap(mainImage.getWidth(), mainImage.getHeight(), Bitmap.Config.ARGB_8888);
130
144
 
131
145
 
132
146
 
133
- canvas.setBitmap(result);
147
+ canvas.setBitmap(resultImage);
134
148
 
135
149
  Paint commonShowPaint = new Paint();
136
150
 
@@ -150,7 +164,7 @@
150
164
 
151
165
 
152
166
 
153
- imageView.setImageBitmap(result);//表示されたのは、真っ白な画像で???状態
167
+ imageView.setImageBitmap(resultImage);//表示されたのは、真っ白な画像で???状態、ストレージで確認すると真っ黒な画像になっている
154
168
 
155
169
 
156
170