Android官方开发文档Training系列课程中文版:打印内容之图像打印

简介: 原文地址:http://android.xsoftlab.net/training/printing/index.html引言Android用户会很频繁的浏览设备上的内容,但是有部分情况例外,当屏幕没有足够的方式可以分享信息的时候。

原文地址:http://android.xsoftlab.net/training/printing/index.html

引言

Android用户会很频繁的浏览设备上的内容,但是有部分情况例外,当屏幕没有足够的方式可以分享信息的时候。那么可以打印Android应用上的内容便给用户提供了一种方式可以查看更大的内容载体,这内容可能来自你的APP或者另一个人所分享的内容。打印还应该允许用户可以创建并打印一段资料,不过该资料并不依靠一台设备,无论这台设备是否电量充足,或者是否有无线网络连接。

在Android 4.4及更高版本上,Android应用程序框架提供了一种服务,这种服务可以使Android应用程序直接打印图像或者文档。这节训练课程描述了如何使你的APP可以实现打印,打印包括图像、HTML页面,以及如何创建并打印自定义文档。

打印照片

拍照并分享出去可能是移动设备上最受欢迎的行为。如果你的程序可以拍照,显示或者允许用户来分享这些照片,你应该考虑可以在应用内部打印这些照片。Android Support Library对打印照片提供了一种简便的功能。该功能只需要少量的代码和一些打印布局的设置就可以实现。

这节课展示了如何使用v4支持库下的PrintHelper类来打印照片。

打印一张图片

Android Support Library PrintHelper类提供了一种简便的方式来打印图像。这个类拥有一个单一的布局选项,setScaleMode(),这个方法可以使你通过以下两种方式打印:

  • SCALE_MODE_FIT 这个选项会调整图像的尺寸,以便使整个图像显示在打印页的内部。
  • SCALE_MODE_FILL 这个选项会缩放图像的尺寸,以便使图像填充打印页的整个打印区域。选择了这个设置就意味着一些顶部和底部的部分或者左边和右边的部分不会被打印出来。这个选项是默认选项。

setScaleMode()方法的两种选项都会保持图像本身的纵横比。下面的代码展示了如何创建PrintHelper的实例,以及如何设置缩放选项和启动打印进程:

private void doPhotoPrint() {
    PrintHelper photoPrinter = new PrintHelper(getActivity());
    photoPrinter.setScaleMode(PrintHelper.SCALE_MODE_FIT);
    Bitmap bitmap = BitmapFactory.decodeResource(getResources(),
            R.drawable.droids);
    photoPrinter.printBitmap("droids.jpg - test print", bitmap);
}

这个方法可以被ActionBar上的菜单点击事件所回调。要注意ActionBar上的所有菜单按钮并不总是被支持的(比如打印按钮),所以应该将这个按钮放置到浮动菜单中。有关更多信息,请参见Action Bar设计指南。

printBitmap()方法被调用之后,不会再要求你的程序有进一步的行动。当Android用户打印界面出现后,会允许用户选择一台打印机以及打印选项。用户然后就可以打印这些图像或者取消这次的打印。如果用户选择了打印图像,那么一个打印工作便会被创建并且会在系统栏上出现一个打印通知。

如果你想在刚才的图像上添加一些附加内容,你必须构造一个打印文档。有关打印文档的更多信息,请参见课程Printing an HTML Document or Printing a Custom Document

目录
相关文章
|
25天前
|
移动开发 JavaScript 应用服务中间件
【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
161 5
【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
|
1月前
|
移动开发 前端开发 Android开发
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
224 12
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
|
1月前
|
移动开发 Rust JavaScript
【01】首页建立-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【01】首页建立-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
480 3
【01】首页建立-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
|
2月前
|
开发工具 Android开发
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
446 11
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
|
30天前
|
移动开发 Android开发
【03】建立隐私关于等相关页面和内容-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【03】建立隐私关于等相关页面和内容-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
100 0
|
2月前
|
Java 开发工具 Maven
【01】完整的安卓二次商业实战-详细的初级步骤同步项目和gradle配置以及开发思路-优雅草伊凡
【01】完整的安卓二次商业实战-详细的初级步骤同步项目和gradle配置以及开发思路-优雅草伊凡
178 6
|
4月前
|
安全 数据库 Android开发
在Android开发中实现两个Intent跳转及数据交换的方法
总结上述内容,在Android开发中,Intent不仅是活动跳转的桥梁,也是两个活动之间进行数据交换的媒介。运用Intent传递数据时需注意数据类型、传输大小限制以及安全性问题的处理,以确保应用的健壯性和安全性。
322 11
|
4月前
|
移动开发 Java 编译器
Kotlin与Jetpack Compose:Android开发生态的演进与架构思考
本文从资深Android工程师视角深入分析Kotlin与Jetpack Compose在Android系统中的技术定位。Kotlin通过空安全、协程等特性解决了Java在移动开发中的痛点,成为Android官方首选语言。Jetpack Compose则引入声明式UI范式,通过重组机制实现高效UI更新。两者结合不仅提升开发效率,更为跨平台战略和现代架构模式提供技术基础,代表了Android开发生态的根本性演进。
165 0
|
8月前
|
JavaScript Linux 网络安全
Termux安卓终端美化与开发实战:从下载到插件优化,小白也能玩转Linux
Termux是一款安卓平台上的开源终端模拟器,支持apt包管理、SSH连接及Python/Node.js/C++开发环境搭建,被誉为“手机上的Linux系统”。其特点包括零ROOT权限、跨平台开发和强大扩展性。本文详细介绍其安装准备、基础与高级环境配置、必备插件推荐、常见问题解决方法以及延伸学习资源,帮助用户充分利用Termux进行开发与学习。适用于Android 7+设备,原创内容转载请注明来源。
1868 77
|
5月前
|
安全 Java Android开发
为什么大厂要求安卓开发者掌握Kotlin和Jetpack?深度解析现代Android开发生态优雅草卓伊凡
为什么大厂要求安卓开发者掌握Kotlin和Jetpack?深度解析现代Android开发生态优雅草卓伊凡
250 0
为什么大厂要求安卓开发者掌握Kotlin和Jetpack?深度解析现代Android开发生态优雅草卓伊凡

热门文章

最新文章