Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
lindexi_gd
Uno
提交
ff43edf6
U
Uno
项目概览
lindexi_gd
/
Uno
大约 1 年 前同步成功
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
Uno
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
ff43edf6
编写于
8月 02, 2023
作者:
Y
Youssef Victor
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
chore: Android alternative impl
上级
47df7039
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
17 addition
and
12 deletion
+17
-12
src/Uno.UI/UI/Xaml/Media/Imaging/RenderTargetBitmap.Android.cs
...no.UI/UI/Xaml/Media/Imaging/RenderTargetBitmap.Android.cs
+17
-12
未找到文件。
src/Uno.UI/UI/Xaml/Media/Imaging/RenderTargetBitmap.Android.cs
浏览文件 @
ff43edf6
...
@@ -9,6 +9,7 @@ using Windows.Foundation;
...
@@ -9,6 +9,7 @@ using Windows.Foundation;
using
Java.Nio
;
using
Java.Nio
;
using
Android.Views
;
using
Android.Views
;
using
Uno.UI.Xaml.Media
;
using
Uno.UI.Xaml.Media
;
using
System.Runtime.InteropServices
;
namespace
Windows.UI.Xaml.Media.Imaging
namespace
Windows.UI.Xaml.Media.Imaging
{
{
...
@@ -39,22 +40,26 @@ namespace Windows.UI.Xaml.Media.Imaging
...
@@ -39,22 +40,26 @@ namespace Windows.UI.Xaml.Media.Imaging
/// <inheritdoc />
/// <inheritdoc />
private
protected
override
bool
IsSourceReady
=>
_buffer
!=
null
;
private
protected
override
bool
IsSourceReady
=>
_buffer
!=
null
;
private
static
ImageData
Open
(
byte
[]
buffer
,
int
bufferLength
,
int
width
,
int
height
)
[
StructLayout
(
LayoutKind
.
Explicit
)]
private
struct
ByteArrayToIntArrayBridge
{
{
var
bitmap
=
Bitmap
.
CreateBitmap
(
width
,
height
,
Bitmap
.
Config
.
Argb8888
!)!;
[
FieldOffset
(
0
)]
int
current
=
0
;
public
byte
[]
ByteArray
;
for
(
int
x
=
0
;
x
<
width
;
x
++)
[
FieldOffset
(
0
)]
public
int
[]
IntArray
;
#pragma warning disable CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable.
public
ByteArrayToIntArrayBridge
(
byte
[]
bytes
)
#pragma warning restore CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable.
{
{
for
(
int
y
=
0
;
y
<
height
;
y
++)
ByteArray
=
bytes
;
{
var
b
=
buffer
[
current
++];
var
g
=
buffer
[
current
++];
var
r
=
buffer
[
current
++];
var
a
=
buffer
[
current
++];
bitmap
.
SetPixel
(
x
,
y
,
new
Android
.
Graphics
.
Color
(
r
,
g
,
b
,
a
));
}
}
}
}
private
static
ImageData
Open
(
byte
[]
buffer
,
int
bufferLength
,
int
width
,
int
height
)
{
var
bitmap
=
Bitmap
.
CreateBitmap
(
new
ByteArrayToIntArrayBridge
(
buffer
).
IntArray
,
width
,
height
,
Bitmap
.
Config
.
Argb8888
!);
return
ImageData
.
FromBitmap
(
bitmap
);
return
ImageData
.
FromBitmap
(
bitmap
);
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录