注:本文翻譯自Google官方的Android Developers Training文檔,譯者技術一般,由于喜愛安卓而產生了翻譯的念頭,純屬個人興趣愛好。
原文鏈接: http://developer.android.com/training/printing/photos.html
拍攝并分享照片是移動設備最流行的用法之一。如果你的應用拍攝了照片,展示他們,或者允許用戶共享照片,你就應該考慮在你的應用中可以打印他們。 Android Support Library 提供了一個方便的函數,它可以僅僅使用很少量的代碼和一些簡單的打印布局配置集,就能打印出照片來。
這堂課將向你展示如何使用 v4 support library 中的 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); }
這個方法可以作為一個菜單項的行為來被調用。注意對于那些不一定都能支持的菜單項(比如打印),應該放置在“ 更多菜單(overflow menu) ”中。要獲取更多知識,可以閱讀: Action Bar 這一設計指引。
在 printBitmap() 被調用之后,你的應用不再需要其他的操作了。之后Android打印界面就會出現,允許用戶選擇一個打印機和它的打印選項。之后用戶就可以打印圖像或者取消這一次操作。如果用戶選擇了打印圖像,那么一個打印的任務就被創建了,并且一個打印的提醒通知會顯示在系統的任務欄中。
如果你希望在你的打印輸出中包含更多的內容,而不僅僅是一張圖片,你就必須構造一個打印文檔。這方面知識將會在后面的兩節課程中展開。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
