回答編集履歴
2
VisualToMat 関数をもっと柔軟に。
answer
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
Visualの内容をMatクラスに変換させる関数を作ってみました。
|
2
2
|
|
3
3
|
```ここに言語を入力
|
4
|
-
private Mat VisualToMat(
|
4
|
+
private Mat VisualToMat(FrameworkElement element)
|
5
5
|
{
|
6
|
-
int w = (int)
|
6
|
+
int w = (int)element.ActualWidth;
|
7
|
-
int h = (int)
|
7
|
+
int h = (int)element.ActualHeight;
|
8
8
|
|
9
9
|
RenderTargetBitmap rtb = new RenderTargetBitmap(w, h, 96d, 96d, PixelFormats.Pbgra32);
|
10
|
-
rtb.Render(
|
10
|
+
rtb.Render(element);
|
11
11
|
|
12
12
|
byte[] bitmapBytes = new byte[w * h * 4];
|
13
13
|
rtb.CopyPixels(bitmapBytes, w * 4, 0);
|
1
関数の名前を変えました
answer
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
Visualの内容をMatクラスに変換させる関数を作ってみました。
|
2
2
|
|
3
3
|
```ここに言語を入力
|
4
|
-
private Mat
|
4
|
+
private Mat VisualToMat(Visual visual)
|
5
5
|
{
|
6
6
|
int w = (int)inkCanvas.ActualWidth;
|
7
7
|
int h = (int)inkCanvas.ActualHeight;
|
@@ -17,11 +17,11 @@
|
|
17
17
|
|
18
18
|
InkCanvasの内容だけが必要な場合は
|
19
19
|
```ここに言語を入力
|
20
|
-
var mat =
|
20
|
+
var mat = VisualToMat(inkCanvas);
|
21
21
|
```
|
22
22
|
背景イメージと描画した絵を一緒に取るには
|
23
23
|
```ここに言語を入力
|
24
|
-
var mat =
|
24
|
+
var mat = VisualToMat(ContentPanel);
|
25
25
|
```
|
26
26
|
こんな風になります。
|
27
27
|
|