问题标签 [drawbitmap]

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 投票
2 回答
12497 浏览

android - 如何防止Android的drawBitmap只绘制黑色图像?

根据原始问题,最终结果是带有自然阴影的圆角png矩形ImageView

我有阴影工作,但是当它绘制时,它会使整个图像变黑。

替代文字

添加阴影时如何防止原始图像(绝对不是黑色)变黑?





更新:

我实施了 Josh 关于复制到正确色彩空间的建议,现在效果很好!对于未来的搜索者,此代码会在图像视图上产生投影。您可以使用 x 和 y 以及 OUTER 常量来获得所需的效果。

替代文字

0 投票
2 回答
821 浏览

android - 多屏同点显示图像 | 安卓

我正在创建一个全屏游戏。我使用图像作为背景,并在其上绘制图像。背景图像在所有设备中看起来都很棒,但我无法在所有设备上的同一位置绘制叠加图像。

例如,如果我使用

canvas.drawBitmap(overlay, 365, 85, paint);

对于宽度为 854 像素的手机,它将完美对齐图像。但是任何低于它的东西都会被推到右边。

我试过玩dip,但我似乎无法弄清楚。有什么地方可以确保它们在所有分辨率上都正确排列?

0 投票
2 回答
1409 浏览

android - Android:使用 canvas.drawBitmap 图像无法保持原始颜色

我正在开发一个 android 应用程序,但遇到了一个奇怪的问题。我正在 SurfaceView 上进行一些图像处理。我正在使用画布和以下方法绘制处理后的图像:

我的 SurfaceView 有一个彩色背景(#3500ffff,一种非常深的绿色),一旦绘制了图像,我可以注意到它的原始颜色没有保留。它具有非常轻微的深绿色色调,就像位图 alpha 已更改一样。

有没有人已经遇到过这个问题?你对如何解决这个问题有想法吗?

0 投票
1 回答
9649 浏览

android - Android:canvas.drawBitmap 性能问题

我最近遇到了一个问题Android:图像围绕中心旋转,这在 Unconn 的帮助下得到了解决。

然而,事实证明,该解决方案 - 以及它正在工作 - 的性能确实比 RotateAnimation 的东西差得多。

到目前为止我所拥有的:1) FrameLayout 与两个 ImageViews,在彼此之上 2) SensorEventHandler,它根据测量的标题移动下视图。如果我使用 RotateAnimation,这可以接受

我想加快速度并稍微平滑动画,但失败了。这是当前的解决方案: 1)具有单独线程的 SurfaceView,控制图层的绘制 2)不执行下面的代码,线程可以达到 50 fps 左右。3)使用下面的代码,帧速率下降到 5ps 甚至更少,所以它不再是非常流畅的东西......

这是代码:

mRadar:显示“雷达”的位图,从早期资源加载 mHeading:从传感器获取的当前航向,以度为单位 mRadarW,mRadarH:图像的初始宽度/高度,在创建时确定

Matrix/drawBitmap 的性能是否已知不那么好,实际上比 RotateAnimation 更差?如果没有机会使用它:您可以提出哪些选择?虽然 RotateAnimation 现在可以工作,但我需要合成一个更复杂的图像,然后我才不得不去 RotateAnimation,所以我担心,我会再次与 drawBitmap 和朋友们松散......

哦,我想念CALayers :)

0 投票
4 回答
3955 浏览

android - Android:FrameLayout子类不绘制

这是,什么有效:

a) 在 main.xml 中有两个 ImageView 的 FrameLayout

b) 在背景上旋转动画,而前景扇区保持不变

因为我需要对背景图像做更多的事情,所以我将它放入 FrameLayout 子类并相应地更改了 main.xml:

这是新的 RadarView.java:

发生什么了:

a) 在 setContentView(R.layout.main) 期间调用构造函数;

b) 调用 dispatchDraw 覆盖

c) 图像没有出现在屏幕上...

有没有人看到,为什么?

0 投票
2 回答
1252 浏览

android - How to rotate a bitmap when drawing a subset of it?

I am using

to draw a subset of a bitmap. I wondering how I can rotate that bitmap without affecting the view. In my attempts, when I set the canvas to rotate the whole view (viewport) is rotated. This is not what I want.

0 投票
2 回答
1302 浏览

android - 'Paint' 参数在 android.graphics.Canvas.drawBitmap() 中有什么作用?

我有一个关于drawBitmap 的问题。

那油漆画什么?例如,我有一张图片.jpg,我制作

当我有一张真实的图片而不是一些 canvas.drawCircle 时,我能用那个“绘画”做什么。有什么办法可以改变图片颜色或类似的东西吗?

是的,还有另一个问题。例如,我在 mspaint 中以 80x80 大小绘制圆圈,而我的背景保持纯白色。当我在我的程序中使用该绘图时,它显示圆圈+那个白色背景。有什么办法可以只显示没有背景的圆圈。也许有人可以建议一些我可以实现的程序,或者我应该在我的程序中使用哪些代码?(圆圈只是例子,可以是任何东西)
是的,借口使用与程序背景相同的圆圈背景是不合适的,因为我的程序的背景不是白色或黑色或任何其他颜色,它是图片。

0 投票
1 回答
935 浏览

java - drawBitmap 耗时太长

你好这里是代码:

现在会发生什么,drawBitmap 从 5 分钟开始就被阻塞了……有什么想法吗?

0 投票
0 回答
329 浏览

android - android drawBitmap RBG_888

我想要一个 24 位位图。当然我可以使用 ARGB_8888 位图模式,但是我不关心 alpha 通道。

我的位图是背景。所以我想通过向 android 表明没有理由使用 alpha 通道来提高性能。

有没有办法做到这一点?

0 投票
1 回答
876 浏览

java - Draw() 还是 DrawBitmap()?

我的应用程序在连续循环中绘制到画布上,并且在每个循环中重新评估可绘制对象的位置并循环它们以进行动画处理。我的问题是以下两种方法中哪一种更好,为什么?我是一个初学者,所以我不知道如何对方法进行基准测试和类似的东西,所以如果你可以,或者你已经有了,我会很感激你的意见。

第一种方法(我正在使用的方法)是为 png 资源分配一个 Handle 作为 Drawable。然后每次我想绘制我调用的对象时:

我的问题是(在构造函数中)将资源解码为位图,然后将其缩放到适当的大小是否会更快。然后在每个循环上通过以下方式绘制资源:

我问的原因是我的应用程序消耗了数百个资源,因此更改一些资源并不足以说明差异,我想知道在大修代码之前这样做是否会明显更快。无论如何,我需要以某种方式提高性能,因此也欢迎任何其他好的想法。