diff options
author | nicolasroard <nicolasroard@google.com> | 2013-08-19 16:21:12 -0700 |
---|---|---|
committer | nicolasroard <nicolasroard@google.com> | 2013-08-19 17:17:36 -0700 |
commit | 513eb24fe6b9376ce41bff0abc53d6d14daf8325 (patch) | |
tree | d1f86d4bae566f2b33006c3fd388efd5452551f1 /src/com/android/gallery3d/util | |
parent | f29cc45abb96754e954d56673e3a959d8bb9787e (diff) | |
download | android_packages_apps_Gallery2-513eb24fe6b9376ce41bff0abc53d6d14daf8325.tar.gz android_packages_apps_Gallery2-513eb24fe6b9376ce41bff0abc53d6d14daf8325.tar.bz2 android_packages_apps_Gallery2-513eb24fe6b9376ce41bff0abc53d6d14daf8325.zip |
Add printing to Gallery
Change-Id: I26aad645759f95813003badffbd03845e0df37bb
Diffstat (limited to 'src/com/android/gallery3d/util')
-rw-r--r-- | src/com/android/gallery3d/util/PrintJob.java | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/com/android/gallery3d/util/PrintJob.java b/src/com/android/gallery3d/util/PrintJob.java index d06466a21..f4bbda189 100644 --- a/src/com/android/gallery3d/util/PrintJob.java +++ b/src/com/android/gallery3d/util/PrintJob.java @@ -18,9 +18,11 @@ package com.android.gallery3d.util; import android.content.Context; import android.graphics.Bitmap; +import android.graphics.BitmapFactory; import android.graphics.Matrix; import android.graphics.Rect; import android.graphics.RectF; +import android.net.Uri; import android.os.Bundle; import android.os.CancellationSignal; import android.print.PageRange; @@ -29,13 +31,20 @@ import android.print.PrintDocumentAdapter; import android.print.PrintDocumentInfo; import android.print.PrintManager; import android.print.pdf.PdfDocument; +import com.android.gallery3d.app.AbstractGalleryActivity; +import com.android.gallery3d.filtershow.cache.ImageLoader; import com.android.gallery3d.filtershow.imageshow.MasterImage; import java.io.FileDescriptor; import java.io.FileOutputStream; public class PrintJob { + private final static int MAX_PRINT_SIZE = 2048; + public static void printBitmap(Context context, final String jobName, final Bitmap bitmap) { + if (bitmap == null) { + return; + } PrintManager printManager = (PrintManager) context.getSystemService(Context.PRINT_SERVICE); android.print.PrintJob printJob = printManager.print(jobName, new PrintDocumentAdapter() { @@ -95,4 +104,9 @@ public class PrintJob { } + public static void printBitmapAtUri(Context context, String imagePrint, Uri uri) { + // TODO: load full size images. For now, it's better to constrain ourselves. + Bitmap bitmap = ImageLoader.loadConstrainedBitmap(uri, context, MAX_PRINT_SIZE, null, false); + printBitmap(context, imagePrint, bitmap); + } } |