如何将较小的位图复制到较大的位图?

2024-03-06

希望这应该是一个简单的问题。我正在尝试将一系列小位图复制到较大的位图中,将它们并排排列,像素中没有任何间隙或重叠。例如,如果我有 3 个正方形位图,我想将它们复制到一个细长的矩形中。我知道如何做相反的事情,即从较大的位图创建一个小位图,但不是这样。正确的命令是什么?

(如果有人好奇,我希望这样做是为了能够重用我为处理单个位图动画而编写的一些代码。)

Thanks!


为大位图创建画布,然后用它来绘制小位图。我对android很陌生,但我猜它是这样的:

Bitmap makeBigBitmap(Bitmap srcBmps[]) {
    Bitmap wideBmp;
    Canvas wideBmpCanvas;
    Rect src, dest;

    // assume all of the src bitmaps are the same height & width
    wideBmp = Bitmap.createBitmap(srcBmps[0].getWidth() * srcBmps.length, 
        srcBmps[0].getHeight(), srcBitmaps[0].getConfig());

    wideBmpCanvas = new Canvas(wideBmp); 

    for (int i = 0; i < srcBmps.length; i++) {
         src = new Rect(0, 0, srcBmps[i].getWidth(), srcBmps[i].getHeight());
         dest = new Rect(src); 
         dest.offset(i * srcBmps[i].getWidth(), 0); 

         wideBmpCanvas.drawBitmap(srcBmps[i], src, dest, null); 
    }

    return wideBmp;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将较小的位图复制到较大的位图? 的相关文章

  • 如何快速自动发送FCM或APNS消息?

    我正在开发一项后端服务 通过 FCM 或 APNS 向移动应用程序发送推送通知 我想创建一个可以在一分钟内运行的自动化测试 并验证服务器是否可以成功发送通知 请注意 我不一定需要检查通知是否已送达 只需检查 FCM 或 APNS 是否已成功
  • 类型容器“Android 依赖项”引用不存在的库 android-support-v7-appcompat/bin/android-support-v7-appcompat.jar

    我在尝试在我的项目中使用 Action Bar Compat 支持库时遇到了某种错误 我不知道出了什么问题 因为我已按照此链接中的说明进行操作 gt http developer android com tools support libr
  • 在包“android”中找不到属性“backgroundTint”的资源标识符

    我发现了一些视图 xml 属性 例如backgroundTint backgroundTintMode 但是当我使用它作为视图属性定义时 Eclipse 显示错误 No resource identifier found for attri
  • 谷歌坐标认证

    当我尝试连接到 Google 坐标时 总是出现异常GoogleAuthException 我拥有 Google 地图协调中心许可证 我确实使用我的包应用程序名称和 SHA1 在 google 控制台中创建了我的客户端 ID 我将权限添加到清
  • Android Activity 生命周期函数基础知识

    我正在测试这段代码 它显示活动所处的状态 public class Activity101Activity extends Activity String tag Lifecycle Called when the activity is
  • 在画布上绘图

    我正在编写一个 Android 应用程序 它可以在视图的 onDraw 事件上直接绘制到画布上 我正在绘制一些涉及单独绘制每个像素的东西 为此我使用类似的东西 for int x 0 x lt xMax x for int y 0 y lt
  • Android MediaExtractor seek() 对 MP3 音频文件的准确性

    我在使用 Android 时无法在eek 上获得合理的准确度MediaExtractor 对于某些文件 例如this one http www archive org download emma solo librivox emma 01
  • 在gradle插件中获取应用程序变体的包名称

    我正在构建一个 gradle 插件 为每个应用程序变体添加一个新任务 此新任务需要应用程序变体的包名称 这是我当前的代码 它停止使用最新版本的 android gradle 插件 private String getPackageName
  • 我想实现下面的布局,按钮应该在屏幕底部,当惰性列被填充时,按钮不应该出去

    顶部有惰性列 惰性列下方有输入电话号码布局并从电话簿布局添加联系人 我希望当未添加联系人时此布局位于顶部 当我添加大量联系人时输入电话号码并添加电话簿布局中的联系人会随着惰性列滚动并移出屏幕 我不让他们走出屏幕 当接触较多时 它们必须粘在底
  • 如何发布Android .aar源以使Android Studio自动找到它们?

    我正在将库发布到内部 Sonatype Nexus 存储库 Android Studio 有一个功能 可以自动查找通过 gradle 引用的库的正确源 我将 aar 的源代码作为单独的 jar 发布到 Nexus 但 Android Stu
  • 如何使用InputConnectionWrapper?

    我有一个EditText 现在我想获取用户对此所做的所有更改EditText并在手动将它们插入之前使用它们EditText 我不希望用户直接更改中的文本EditText 这只能由我的代码完成 例如通过使用replace or setText
  • 错误:在根项目“projectName”中找不到项目“app”

    我有一个在 Eclipse 中开发的旧应用程序 现在尝试将其迁移到 Android Studio 我更新了库并遵循了基本步骤 现在 我收到此错误 Error Project app not found in root project pro
  • 我的设备突然没有显示在“Android 设备选择器”中

    我正在使用我的三星 Galaxy3 设备来测试过去两个月的应用程序 它运行良好 但从今天早上开始 当我将设备连接到系统时 它突然没有显示在 Android 设备选择器 窗口中 我检查过 USB 调试模式仅在我的设备中处于选中状态 谁能猜出问
  • .isProviderEnabled(LocationManager.NETWORK_PROVIDER) 在 Android 中始终为 true

    我不知道为什么 但我的变量isNetowrkEnabled总是返回 true 我的设备上是否启用互联网并不重要 这是我的GPSTracker class public class GPSTracker extends Service imp
  • 如何根据 gradle 风格设置变量

    我想传递一个变量test我为每种风格设置了不同的值作为 NDK 的定义 但出于某种原因 他总是忽略了最后味道的价值 这是 build gradle apply plugin com android library def test andr
  • 增加活动的屏幕亮度

    显然 Android 操作系统中至少有三种不同的技术可以改变屏幕亮度 其中两个在纸杯蛋糕之后不再起作用 而第三个被接受的技术显然有一个错误 我想在单视图活动开始时增加屏幕亮度 然后在活动结束时将亮度恢复为用户设置 没有按钮 没有第二个视图或
  • 在activity_main.xml中注释

    我是安卓新手 据我所知 XML 中的注释与 HTML 中的注释相同 使用 形式 我想在 Android 项目的 Activity main xml 配置文件中写一些注释 但它给了我错误 值得注意的是 我使用的是 Eclipse 但目前 我直
  • Android:膨胀布局时出现 StackOverFlowError 和 InvokingTargetException

    首先 对不起我的英语 我在膨胀布局时有一个问题 我有一个自定义视图 从 LinearLayout 扩展而来 称为按钮帮助 我在名为的布局上使用该视图加载活动 我的以下代码在所有设备和模拟器上都能完美运行 但具有 QVGA 屏幕 例如 Sam
  • Firebase 添加新节点

    如何将这些节点放入用户节点中 并创建另一个节点来存储帖子 我的数据库参考 databaseReference child user getUid setValue userInformations 您需要使用以下代码 databaseRef
  • 强制 Listview 不重复使用视图(复选框)

    我做了一个定制Listview 没有覆盖getView 方法 Listview 中的每个项目都具有以下布局 联系布局 xml

随机推荐

  • 在PDFBox中,是否可以在标记注释中添加工具提示(提示)?

    简而言之 我一直在开发一个程序 它可以获取pdf 突出显示一些单词 通过pdfbox Mark Annotation obj 并保存新的pdf 我希望突出显示的单词显示一个工具提示 上面有一些小描述 例如提示 例如 我希望在我的 pdf 中
  • 每个浏览器都有不同的CSS?

    有没有办法为特定浏览器加载不同的 CSS 文件 就像 糟糕的伪代码 if firefox if chrome if Safari 您想要的理想解决方案不存在 不幸的是 如果您尝试在 HTML 本身上执行此操作 则不存在跨浏览器解决方案 但是
  • 将 Firebase 消息服务添加到我的 AndroidManifest.xml 文件时,清单合并失败并出现多个错误

    我希望将 Firebase 云消息传递添加到我的应用程序中 我跟着codelab https codelabs developers google com codelabs firebase android index html index
  • 实体框架导航属性通过 WCF 循环问题

    我有一个像这样的模型 public class User Key public long UserId get set Required public String Nickname get set public virtual IColl
  • 如何在Vim中显示垂直线以换行?

    我有兴趣找到一种在 Vim 而不是 GVim 中在第 80 列显示垂直线的方法 我用过set wrap 但我只想显示一条垂直线 这样我就可以自己包裹长线 Vim 7 3 中的新功能 colorcolumn 是一个逗号分隔的屏幕列列表 这些列
  • C++/Boost:编写更强大的 sscanf 替代品

    我想用 C 编写一个函数来替换 C 的 sscanf 将匹配项分配给迭代器 基本上 我想要这样的东西 string s 0 5 6 hello std vector
  • Android 日历,列显示名称无效

    您好 我需要在 Android 日历上实现插入 更新事件的代码 当我尝试在 Android 日历上添加事件时 它会抛出异常 列显示名称无效 我尝试替换 deprecated 因为应用程序崩溃 Cursor l managedCursor t
  • 无法在tensorflow r1.14中导入“tensorflow.contrib.tensorrt”

    我已经安装了Tensorflow r1 14并想使用TF TRT 但是 出现以下错误 ModuleNotFoundError 没有名为 tensorflow contrib tensorrt 的模块 运行示例代码时 同样的错误发生在Tens
  • 使用 BootstrapVue b-form-file 上传多个文件,并逐一挑选它们

    我在 BootstrapVue 中使用 b form file 上传文件 将 multiple 设置为 true 非常适合多个文件 但每次我选择一个文件时 它都会删除以前添加的任何文件 文件通常会分布在多个文件夹中 因此我需要能够从一个文件
  • 使用 BeautifulSoup 和 Python 抓取多个页面

    我的代码成功地从 中抓取了 tralign center 标签 并将 td 元素写入文本文件 但是 上面的网站上有多个页面 我希望能够在其中进行抓取 例如 对于上面的 url 当我单击 第 2 页 的链接时 整个 url 不会更改 我查看了
  • 在 Objective C 中将 RTF 文件转换为 HTML

    如何将 RTF 文件转换为 HTML 格式 我有一个文本编辑器 可以将文件保存为 rtf 格式 但我需要将内容放在我的服务器上 为此 我需要将 rtf 文件转换为 html 文件 我无法找到有关 Objective C 的任何帮助 谢谢 我
  • 如何从 voiceXML 调用 Web 服务?

    我正在构建一个非常简单的 voiceXML 应用程序 以允许人们进行录音 但首先 我需要通过电话号码和 或 PIN 码对呼叫者进行身份验证 我可以从 voiceXML 调用 Web 服务吗 看起来我想使用 voiceXML 数据 元素来调用
  • 为什么call指令的操作码表示为FF15?

    我仍在学习汇编并尝试将指令与其操作码连接起来 阅读 pdf 在https code google com p corkami wiki PE101 show content https code google com p corkami w
  • 如何将 Qt5 和 Qt Creator 2.6.1 与 VS 2012 的编译器一起使用?

    官方下载 http qt project org downloads现在仅包含 VS 2010 的 Qt 库 5 0 0 我在 VS 2012 Express 中尝试了它们 但收到一条错误消息 错误 LNK2038 检测到 MSC VER
  • 有没有办法在所有 jquery 脚本运行后查看网页的源代码?

    我目前使用 Chrome Firefox 进行 Web 开发 有没有一个插件 或者我只是另一种方式 您可以在所有 jQuery 插件运行后查看 HTML 源代码 我只是想看看 jQuery 修改了什么以及如何修改 HTML Firebug
  • 带有 gcc stdlib 的 icpc C++11

    我正在使用 icpc 非可选 并且使用 std c 0x 进行编译 因此我可以使用ambas 然而 当我这样做时 它会使用 gcc stdlib 创建 havok 其中一个支持另一个不支持的功能 我尝试过定义 GXX EXPERIMENTA
  • 使用指定存储库中的 Git 分支动态填充 Jenkins Choice 参数

    我有一个参数化的 Jenkins 作业 它需要输入特定 Git 存储库中的特定 Git 分支 目前该参数是一个字符串参数 有没有办法让这个参数成为选择参数并用Git分支动态填充下拉列表 我不想要求有人在每次创建新分支时手动配置下拉列表来维护
  • php-fpm 进程监控/分析

    我最近遇到了 php fpm 进程使用 如活动进程数量 的问题 达到了最大可用进程的峰值 并停止执行其他脚本 直到有问题的进程完成 更详细一点 我当前的 php fpm 设置是 pm static pm max children 100 我
  • 在 Java 中以编程方式清除控制台

    我创建了一个示例 Java 应用程序 我想清除窗口选项 即 Register Login Clear 如果用户按 3 我需要以编程方式清除所有选项 就像是Console clear 有什么办法可以用 Java 做到这一点吗 您将需要输出一堆
  • 如何将较小的位图复制到较大的位图?

    希望这应该是一个简单的问题 我正在尝试将一系列小位图复制到较大的位图中 将它们并排排列 像素中没有任何间隙或重叠 例如 如果我有 3 个正方形位图 我想将它们复制到一个细长的矩形中 我知道如何做相反的事情 即从较大的位图创建一个小位图 但不