如何从PDF itext底部删除空白

时间:2019-03-08 01:57:19

标签: android itext itextg

我正在尝试制作一个巨大的PDF,它将在一页上包含所有信息,因为文档中的信息之间没有间断。它可能永远不会被打印出来,因此PDF的大小不是问题。使用Itext,我发现可能的唯一方法是创建一个长14400px的页面,或者在A4页面中创建5M的页面,但是如果文档比预期的要短,则会留下空白(我从未见过文档的长度超过14400px )到目前为止,这是我的代码

private void pdfSave() {
        float pageWidth = 200f;
        float pageHeight = 1440f;
        Rectangle pageSize = new Rectangle(pageWidth, pageHeight);
        Document mDoc =new Document(pageSize);
        String mFileName = new SimpleDateFormat("ddMMyyyy_HHmmss",
                Locale.getDefault()).format(System.currentTimeMillis());

        String mFilePath = Environment.getExternalStorageDirectory()+"/"+"pdf_viewer"+"/"+mFileName+".pdf";
        File dir = new File(mFilePath);
        if(!dir.exists()){
            dir.getParentFile().mkdir();
        }
        try{
            PdfWriter.getInstance(mDoc, new FileOutputStream(mFilePath));
            mDoc.setMargins(10,10,10,10);
            mDoc.open();

            String mText = mTextEt.getText().toString();


            mDoc.add(new Paragraph(mText,FontFactory.getFont(FontFactory.HELVETICA, 4, Font.BOLDITALIC)));
            mDoc.close(); 
        }

编辑:我曾尝试使用注释中提到的裁剪框和第二遍,但如果调试它,我的应用程序会在此行崩溃

Rectangle rect = getOutputPageSize(pageSize, reader, i); 

0 个答案:

没有答案