Itext 5.5向文档添加图像



我正在使用itext并创建PDF文件。我需要在我的文档中添加一个JPG文件,但我做不到。我为我的应用程序创建了一个测试文件夹,位于assets/imageAssets中,包含jpg.jpg文件,但我无法将该jpg文件添加到我的文档中。我得到"没有这样的文件和目录"错误。这是代码块

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

事实上,我还有一个问题。我正在从用户那里获取用户签名,并将其保存在"外部存储"文件夹中。这个jpg将是我要添加到我的PDF中的东西。我可以在哪里保存它们,以及如何访问它们?谢谢

@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()
}
}

最新更新