使用Android PdfDocument API编写PDF文件

使用Android PdfDocument API编写PDF文件,第1张

概述我使用以下代码使用 Android PDFDocument API( https://developer.android.com/reference/android/graphics/pdf/PdfDocument.html)从View编写PDF. 码 /** * Writes given PDFDocument using content view. * * @pa 我使用以下代码使用 Android pdfdocument API( https://developer.android.com/reference/android/graphics/pdf/PdfDocument.html)从VIEw编写pdf.

/**     * Writes given pdfdocument using content vIEw.     *     * @param pdfdocument pdfdocument to be written.     */    private voID writepdfdocument(final pdfdocument pdfdocument) {        // crate a page description        pdfdocument.PageInfo pageInfo = new pdfdocument.PageInfo.Builder(pdf_PAGE_WIDTH,pdf_PAGE_HEIGHT,1).create();        // start a page        pdfdocument.Page page = pdfdocument.startPage(pageInfo);        // draw vIEw on the page        int measureWIDth = VIEw.MeasureSpec.makeMeasureSpec(page.getCanvas().getWIDth(),VIEw.MeasureSpec.EXACTLY);        int measuredHeight = VIEw.MeasureSpec.makeMeasureSpec(page.getCanvas().getHeight(),VIEw.MeasureSpec.EXACTLY);        contentVIEw.measure(measureWIDth,measuredHeight);        contentVIEw.layout(0,page.getCanvas().getWIDth(),page.getCanvas().getHeight());        contentVIEw.draw(page.getCanvas());        // finish the page        pdfdocument.finishPage(page);    }

问题

如果我正在写A4尺寸的pdf.

因此,如果我的视图大小超过我的pdf大小,如何自动将其写入第二页,那么如果视图大小超过pdf页面大小,那么这些视图会被切断.

提前致谢.

解决方法 我认为你有两种选择.一种是缩放环境以使视图适合一页.另一种是手动“平铺”或“分页”视图.您必须计算所需的页数,然后在页面之间翻译画布

contentVIEw.draw(page.getCanvas());pdfdocument.finishPage(page);page.getCanvas().translate(595,842);page = document.startPage(pageInfo);contentVIEw.draw(page.getCanvas());//etc.
总结

以上是内存溢出为你收集整理的使用Android PdfDocument API编写PDF文件全部内容,希望文章能够帮你解决使用Android PdfDocument API编写PDF文件所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1125405.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存