Itext 5.5 在文档中添加图像 [重复]

问题描述 投票:1回答:1

我正在使用itext和创建PDF文件。我需要在我的文档中添加一个JPG文件,但我不能。我为我的应用程序创建了一个测试文件夹,它是在assetsimageAssets包括jpg.jpg文件,但我不能添加JPG文件到我的文档。我得到 "没有这样的文件和目录 "的错误。以下是代码块

        var filePath = "assets/imageAssets/jpg.jpg"
        var image: Image? = Image.getInstance(filePath)
        document.add(image)

其实我还有一个问题。我从用户那里得到用户签名,我把它保存在外部存储文件夹里。那张jpg将是我要添加到我的PDF中的东西。我可以将它们保存在哪里,以及我可以如何访问它们?谢谢!我用itext和创建的。

android kotlin itext pdf-generation jpeg
1个回答
1
投票
 @Throws(DocumentException::class)
private fun addImage(document: Document)
{
    try { // Get user Settings GeneralSettings getUserSettings =
        val rectDoc = document.pageSize
        val width = rectDoc.width
        val height = rectDoc.height
        val imageStartX = width - document.rightMargin() - 315f
        val imageStartY = height - document.topMargin() - 500f
        System.gc()

        val ims: InputStream? = activity?.assets?.open("test.jpg") //Inside a Fragment
        val bmp = BitmapFactory.decodeStream(ims)
        val stream = ByteArrayOutputStream()
        bmp.compress(Bitmap.CompressFormat.JPEG, 100, stream)
        val byteArray: ByteArray = stream.toByteArray()
        // PdfImage img = new PdfImage(arg0, arg1, arg2)

        // Converting byte array into image Image img =
        val img = Image.getInstance(byteArray) // img.scalePercent(50);
        img.alignment = Image.TEXTWRAP
        img.scaleAbsolute(200f, 200f)
        img.setAbsolutePosition(imageStartX, imageStartY) // Adding Image
        document.add(img)
    } catch (e: java.lang.Exception) {
        e.printStackTrace()
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.