Android官方开发文档Training系列课程中文版:打印内容之图像打印
原文地址: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。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的Android官方开发文档Training系列课程中文版:打印内容之图像打印的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android官方开发文档Trainin
- 下一篇: 【LeetCode】3月31日打卡-Da