问题标签 [android-graphics]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
18 浏览

android - 在背景顶部放置 2D 图像

我正在开发具有以下要求的android应用程序

  1. 从图库中获取图像并将其显示为背景。

这是按如下方式完成的:

2.在背景图像的顶部放置一个 2D 图像。

3.通过拖动重新定位图像 4.缩放图像。

请任何人提出完成步骤 2,3 和 4 的方法。

提前致谢!

0 投票
2 回答
185 浏览

android - Why path drawn on scaled GLES20RecordingCanvas and simple Canvas has different qualities?

Path drawn on scaled GLES20RecordingCanvas has quality as if it was drawn unscaled in bitmap and then up-scaled.

In contrast, if I create Canvas with backing bitmap and then apply the same scaling transformations to Canvas object I get much superior bitmap.

Here both circles are drawn with Path.addCircle and using Canvas.scale. Upper circle is drawn with scaled GLES20RecordingCanvas and lower is drawn with scaled simple Canvas with backing bitmap.

Some code:

Full example

I can't understand the quality difference with these two cases. For me it seems that they have to be interchangeable.

0 投票
1 回答
873 浏览

android - 创建没有宽度/高度的 ImageReader

当我尝试创建深度点云类型的 imageReader 时,我得到一个空对象。

这样做的原因是我已经为此改编了代码Camera2Basic,它从流配置映射中获得了最大的输出大小。问题在于,由于它是点云,因此没有合理的宽度和高度可供输出。因此它返回空的宽度和高度,从而产生空的 imageReader:

因此,我真正能看到的唯一解决方案是是否有一种方法可以为深度点云格式创建 imageReader,不幸的是我看不到这样做的方法,因为它需要有一个显然存在的宽度和高度不可能。因此我的问题。

感谢您给我的任何帮助和建议。

0 投票
2 回答
4318 浏览

android - 如何获取视图的位图?

好的,所以我会尽力解释我的问题。我已使用此代码获取 FrameLayout 的“屏幕截图”

这是我的框架布局

DrawCustomView用于绘画photoImageView

现在我也有不同的活动来裁剪图像。所以,我将这个位图(使用screenshot(view))保存在一个文件中,并将文件路径发送到这个裁剪活动。在我的裁剪活动中,我使用https://github.com/ArthurHub/Android-Image-CropperCropImageView来裁剪图像。当我尝试裁剪发送到裁剪活动的彩绘照片时,我得到了一个奇怪的裁剪,如下所示:

图像因裁剪过多而翻倍: https ://drive.google.com/open?id=0B4jK5QX65b0ZSHdMTWIzZXluZXc

放大之前: https ://drive.google.com/open?id=0B4jK5QX65b0ZeUk3NUlGUHRSQ0E

这是作物活动中正常图片的显示方式: https ://drive.google.com/open?id=0B4jK5QX65b0ZNk9oSG1ZaGxYOVk

我还注意到,在正常情况下,裁剪的范围仅限于图像大小,但是当使用 screenshot() 进行编辑时,范围会占用屏幕的大小。

我事先测试了我的裁剪活动,它适用于从相机发送的图像。我还尝试发送一张不是使用截图功能获得的图片,它在裁剪活动中运行良好。

我很乐意提供更多信息,非常感谢任何帮助......我对android开发比较陌生:)

编辑

该视频可能会为问题提供更多视角 https://drive.google.com/open?id=0B4jK5QX65b0ZSUVFZDlQeTc4QnM

0 投票
0 回答
25 浏览

android - 如何在 surfaceView 上单独绘制?有什么办法吗?

我想制作一个 dx 球类游戏。在我的游戏中,我想分别画一个球、一个酒吧、一个砖块。这意味着当球位准备好时,球将被拉平;当砖块准备好时,砖块将被绘制。以正常方式,我锁定表面支架然后绘制所有内容。示例->

然后,我们将其解锁并发布。但是,我怎样才能分别绘制所有内容?先谢谢了。

0 投票
2 回答
605 浏览

android - 有没有一种直接的方法来测量点和 VectorDrawable 组之间的距离?

在我的 Android 应用程序中,我想知道用户单击的点与特定 VectorDrawable 组之间的距离。

我想要与blueVectorDrawable 中的组的距离:

有没有一种简单的方法可以在 Android 中计算这个距离?

0 投票
1 回答
45 浏览

android-drawable - 形状的隐形角落 - Android?

我有以下几点shape

我有以下几点:

在此处输入图像描述

但我还看到了角落。我怎样才能看不见它们?

0 投票
1 回答
23 浏览

android - 如果两个圆圈在 Android 中使用 View 在他们的任何一点上相遇,如何触发特定动作?

我正在使用我自己定制的 VIEW 做一个简单的 android 动画。我在扩展类的onDraw()方法上画了两个圆圈。一个圆圈在拖动时移动,而另一个圆圈在某个位置上是静止的。如果动圈碰到静圈的任意一点,动圈的颜色就会变成静圈的颜色。classViewMotionEvent

例如

让我们假设作为圆 1 的移动圆被拖放到圆 2 的某个点。

我尝试使用下面的公式,但圆圈 1 的颜色只有在它真的到达圆圈 2 的确切位置时才会改变。

我知道这里的问题是一个圆的半径有很多点,但是如果一个圆将他的任何点与另一个圆接触,我怎么能触发一个特定的动作呢?谢谢。

0 投票
1 回答
74 浏览

android - 如何在Android的Region中找到给定X的最大可能Y点?

在此处输入图像描述

我在屏幕上绘制了一个虚拟标尺。当触摸事件发生在生长的矩形内时,我希望能够像上面的蓝线一样绘制一条直线。但由于触摸不能 100% 笔直,因此运动可能会像红线一样。这就是为什么我设置一个矩形来监听所有附近的触摸事件,然后画一条蓝线。

我目前有

然后我检查触摸是否发生在棕色矩形内mRegions.contains(x,y)。到目前为止,它非常适合触摸检测,但我现在遇到的问题是如何画一条直线。我尝试修复 X ​​点然后计算 Y。当标尺水平时它工作正常,然后从水平转向垂直时开始表现得很奇怪。我不知道如何做到这一点。请帮忙!谢谢你。

0 投票
0 回答
178 浏览

android - Surface View 仅在断点调试中绘制

我想从MainActivity. (用户)项目的 Github 链接在文章末尾给出。

MainActivitydraw(Drawing)在 SurfaceView 实例上调用方法。

我有以下代码,只有在启用断点调试时才会绘制表面视图。

我已经访问了这些链接,没有找到解决方案:

Android SurfaceView 为空

使用 Surfaceview 绘图会创建空白屏幕

Android在surfaceview和canvas上绘图

我遵循的教程:

在 Android 画布上绘制三角形、菱形和其他自定义形状

Android 编码 - 在 SurfaceView 上绘图

我认为这是一个视图创建过程中的问题,所以我添加了创建检查:

这是线程:

我还故意添加了延迟以等待表面视图初始化。

  • 代码在以下情况下工作:我启用断点调试。
  • 简单的调试不显示任何绘制。
  • 我多次重新创建了这个场景。

我使用 Nexus 6 (OS 7.1.1) 作为测试设备。(不是模拟器)。

github 上的项目源。