如何打印 tableLayout 内容
How do I print a tableLayout content
我有一个应用程序可以从数据库生成报告并将其显示在 table 布局中,问题是我不知道如何打印 table 内容的硬拷贝。最好打印成 PDF ... 谢谢(Java 不是 Kotlin)
一种作弊方法是将布局绘制到一个单独的 canvas 中,该布局与使用环绕内容进行布局时需要的大小一样大,并且对大小没有限制。
请参阅答案 ,了解如何使用 tableLayout 执行此操作。
然后通过
打印支持canvas的位图作为图片
// Draw to bitmap stuff in other answer ... then
PrintHelper photoPrinter = new PrintHelper(this);
photoPrinter.setScaleMode(PrintHelper.SCALE_MODE_FIT);
photoPrinter.setOrientation(PrintHelper.ORIENTATION_LANDSCAPE);
photoPrinter.printBitmap("Print Jobname", bitmap);
然后您可以 select 真正的打印机或 GUI 中内置的“打印为 PDF”
请注意,对于大型表格,这可能会非常耗费内存,而且它只会打印一页宽和多页长。
我有一个应用程序可以从数据库生成报告并将其显示在 table 布局中,问题是我不知道如何打印 table 内容的硬拷贝。最好打印成 PDF ... 谢谢(Java 不是 Kotlin)
一种作弊方法是将布局绘制到一个单独的 canvas 中,该布局与使用环绕内容进行布局时需要的大小一样大,并且对大小没有限制。
请参阅答案
然后通过
打印支持canvas的位图作为图片
// Draw to bitmap stuff in other answer ... then
PrintHelper photoPrinter = new PrintHelper(this);
photoPrinter.setScaleMode(PrintHelper.SCALE_MODE_FIT);
photoPrinter.setOrientation(PrintHelper.ORIENTATION_LANDSCAPE);
photoPrinter.printBitmap("Print Jobname", bitmap);
然后您可以 select 真正的打印机或 GUI 中内置的“打印为 PDF”
请注意,对于大型表格,这可能会非常耗费内存,而且它只会打印一页宽和多页长。