如何将android设备中的PDF,图像和HTML文档打印到wifi上的打印机上?

何塞·弗朗西斯(Jose Francis)

我需要在我的android应用程序中实现文档打印功能。我能够使用下面提到的android打印框架代码来打印图像文件:

private void doPhotoPrint(Bitmap bigbitmap) 
{
    PrintHelper photoPrinter = new PrintHelper(MainActivity.this);
    photoPrinter.setScaleMode(PrintHelper.SCALE_MODE_FIT);
    photoPrinter.printBitmap("droids.jpg - test print", bigbitmap);
}

我遍历了讨论同一个问题的现有主题,但是它们都帮不上什么忙。

我面临的问题是其他文档类型,例如PDF和HLML。如果有人可以提供一些相同的见解,这将是有帮助的。

Harikumar S.

您可以检查此代码

if(android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
        PrintManager printManager = (PrintManager) this.getSystemService(Context.PRINT_SERVICE);
        String jobName = this.getString(R.string.app_name) + " Document";



        PrintDocumentAdapter pda = new PrintDocumentAdapter() {

            @Override
            public void onWrite(PageRange[] pages, ParcelFileDescriptor destination, CancellationSignal cancellationSignal, WriteResultCallback callback) {
                InputStream input = null;
                OutputStream output = null;

                try {
                    AssetManager assetManager = getAssets();
                    File file = new File(getFilesDir(), "fact_sheet.pdf");                 
                    input = assetManager.open("fact_sheet.pdf");                        
                    output = new FileOutputStream(destination.getFileDescriptor());
                    byte[] buf = new byte[1024];
                    int bytesRead;

                    while ((bytesRead = input.read(buf)) > 0) {
                        output.write(buf, 0, bytesRead);
                    }

                    callback.onWriteFinished(new PageRange[]{PageRange.ALL_PAGES});

                } catch (FileNotFoundException ee) {
                    //Catch exception
                } catch (Exception e) {
                    //Catch exception
                } finally {
                    try {
                        input.close();
                        output.close();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                }
            }

            @Override
            public void onLayout(PrintAttributes oldAttributes, PrintAttributes newAttributes, CancellationSignal cancellationSignal, LayoutResultCallback callback, Bundle extras) {

                if (cancellationSignal.isCanceled()) {
                    callback.onLayoutCancelled();
                    return;
                }

                // int pages = computePageCount(newAttributes);

                PrintDocumentInfo pdi = new PrintDocumentInfo.Builder("Name of file").setContentType(PrintDocumentInfo.CONTENT_TYPE_DOCUMENT).build();

                callback.onLayoutFinished(pdi, true);
            }
        };
      printManager.print(jobName, pda, null);  
    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将JasperPrint直接打印到打印机?

来自分类Dev

如何将JasperPrint直接打印到打印机?

来自分类Dev

Java-如何将PDF打印到特定打印机?

来自分类Dev

将 PDF 文档重新打印到 PDF 打印机 - 一般和特定于 Delphi

来自分类Dev

如何将位图图像转换为.pcx格式以在Zebra打印机中打印图像

来自分类Dev

如何从Flutter将亚洲语言打印到热敏打印机上?

来自分类Dev

如何将旧打印机用作无线设备

来自分类Dev

用于将图像发送和打印到热敏打印机的库

来自分类Dev

如何将多个作业打印到多个原始文件(使用打印机属性中的FILE:端口)?

来自分类Dev

将JavaScript和HTML添加到IFRAME,然后将IFRAME打印到打印机

来自分类Dev

如何将 tkinter 的文本小部件的文本发送或打印到打印机?

来自分类Dev

如何在热敏打印机上打印大图像

来自分类Dev

如何打印到实际打印机?

来自分类Dev

在Awesomium中打印到打印机?

来自分类Dev

如何将自定义 ZPL 标签从移动设备打印到连接到设备集线器的打印机?

来自分类Dev

如何将docx和pdf文件发送到打印机?

来自分类Dev

如何在Java中设计要在300 dpi打印机上打印的图像

来自分类Dev

如何通过Android中的蓝牙连接移动设备和打印机?

来自分类Dev

无法通过wifi打印到Brother打印机

来自分类Dev

如何将此代码转换为不要求打印机,而仅打印到默认打印机?

来自分类Dev

设置/设备/打印机中的打印机加倍

来自分类Dev

如何将分组的箱线图打印到pdf文档上并标记异常值

来自分类Dev

同时使用以太网和wifi打印到网络打印机的方法

来自分类Dev

如何在TSC打印机中打印图像

来自分类Dev

我该如何删除打印中的打印机图像?

来自分类Dev

如何将Xbox One控制器添加到虚拟机的设备和打印机列表中?

来自分类Dev

如何将数据发送到wifi打印机

来自分类Dev

Ghostscript.NET.dll将pdf打印到指定的打印机

来自分类Dev

ASP.Net使用首选项将PDF直接打印到打印机

Related 相关文章

  1. 1

    如何将JasperPrint直接打印到打印机?

  2. 2

    如何将JasperPrint直接打印到打印机?

  3. 3

    Java-如何将PDF打印到特定打印机?

  4. 4

    将 PDF 文档重新打印到 PDF 打印机 - 一般和特定于 Delphi

  5. 5

    如何将位图图像转换为.pcx格式以在Zebra打印机中打印图像

  6. 6

    如何从Flutter将亚洲语言打印到热敏打印机上?

  7. 7

    如何将旧打印机用作无线设备

  8. 8

    用于将图像发送和打印到热敏打印机的库

  9. 9

    如何将多个作业打印到多个原始文件(使用打印机属性中的FILE:端口)?

  10. 10

    将JavaScript和HTML添加到IFRAME,然后将IFRAME打印到打印机

  11. 11

    如何将 tkinter 的文本小部件的文本发送或打印到打印机?

  12. 12

    如何在热敏打印机上打印大图像

  13. 13

    如何打印到实际打印机?

  14. 14

    在Awesomium中打印到打印机?

  15. 15

    如何将自定义 ZPL 标签从移动设备打印到连接到设备集线器的打印机?

  16. 16

    如何将docx和pdf文件发送到打印机?

  17. 17

    如何在Java中设计要在300 dpi打印机上打印的图像

  18. 18

    如何通过Android中的蓝牙连接移动设备和打印机?

  19. 19

    无法通过wifi打印到Brother打印机

  20. 20

    如何将此代码转换为不要求打印机,而仅打印到默认打印机?

  21. 21

    设置/设备/打印机中的打印机加倍

  22. 22

    如何将分组的箱线图打印到pdf文档上并标记异常值

  23. 23

    同时使用以太网和wifi打印到网络打印机的方法

  24. 24

    如何在TSC打印机中打印图像

  25. 25

    我该如何删除打印中的打印机图像?

  26. 26

    如何将Xbox One控制器添加到虚拟机的设备和打印机列表中?

  27. 27

    如何将数据发送到wifi打印机

  28. 28

    Ghostscript.NET.dll将pdf打印到指定的打印机

  29. 29

    ASP.Net使用首选项将PDF直接打印到打印机

热门标签

归档