安卓使用iText7生成pdf

  1. iText7 jar包下载
    官网:https://kb.itextpdf.com/home
    网盘下载:链接:https://pan.baidu.com/s/12IOjjkFAt93BGBqt8a90uA
    提取码:hzur
    生成代码示例:
val FONT = PathUtils.getInternalAppFilesPath() + "/canger.ttf";
    private fun makePdf() {
        thread(start = true) {
            WaitDialog.show(this, "加载中")
            val time = System.currentTimeMillis()
            val dest = PathUtils.getExternalStoragePath() + "/1111111/1.pdf"
            FileUtils.createFileByDeleteOldFile(dest)
            val writer = PdfWriter(dest)
            val pdf = com.itextpdf.kernel.pdf.PdfDocument(writer)

            val document = Document(pdf)

            var font1250: PdfFont = PdfFontFactory.createFont(FONT, PdfEncodings.IDENTITY_H, true);

            (0..4000).forEach {
                document
                    .add(
                        Paragraph("$it . a阿森松岛奥术大师大所阿萨德阿萨德阿萨德as大声奥术大师大所大as打算大声道阿萨德阿萨德阿萨德阿萨德阿萨德阿萨德阿萨德道阿萨德as打算打算打算打算阿萨德as打算as")
                            .setFont(
                                font1250
                            )
                    )
                document.add(
                    Paragraph("A:奥术大哎谁大叔大婶阿萨德阿萨德as师大所大所大所").setFont(
                        font1250
                    )
                )
                document.add(
                    Paragraph("B:奥术大师大打算打算多所大所大所").setFont(
                        font1250
                    )
                )
                document.add(
                    Paragraph("C:奥术大师大所大所撒大声地大所").setFont(
                        font1250
                    )
                )
                document.add(
                    Paragraph("D:奥术大啊是的阿萨德阿萨德师大所大所大所").setFont(
                        font1250
                    )
                )
            }

            document.close()
            //4000  用时7秒
            LogUtils.d("huanghai",this,"MainActivity.makePdf","导出用时",""+(System.currentTimeMillis()-time)+"ms")
            WaitDialog.dismiss()
        }
    }

你可能感兴趣的:(安卓使用iText7生成pdf)