如何将条形码插入由IText7 HtmlConverter.ConvertToDocument方法创建的PDF中

问题描述

我正在使用IText 7将HTML文件转换为PDF,并在用户单击按钮时自动下载该文件

目前,我打算使用IText7将条形码插入PDF文件,但是遇到一些错误。顺便说一句,没有“条形码”也可以正常工作。

这是错误:'iText.Kernel.PdfException:'Pdf间接对象属于其他PDF文档。将对象复制到当前的pdf文档中。''

如何在pdf文件的末尾添加条形码?

public MemoryStream GetCovidFormPdfByAccessionNumber(string htmlFile,string accessionNumber)
    {
                var workStream = new MemoryStream();
                using (var pdfWriter = new PdfWriter(workStream))
                {
                    pdfWriter.SetCloseStream(false);
    
                    var pdfDoc = new PdfDocument(pdfWriter);
    
                    using (var document = HtmlConverter.ConvertTodocument(htmlFile,pdfWriter))
                    {
                        document.Add(CreateBarcode(accessionNumber,pdfDoc));
            
                    }
                }
    
                workStream.Position = 0;
    
                return workStream;
    }
    
    private static Image CreateBarcode(string code,PdfDocument pdfDoc)
    {
                
    
    
                Barcode39 barcode = new Barcode39(pdfDoc);
                barcode.SetCode(code);
    
                //Create barcode object to put it to the cell as image
                PdfFormXObject barcodeObject = barcode.CreateFormXObject(ColorConstants.BLACK,ColorConstants.BLACK,pdfDoc);
                var image = new Image(barcodeObject);
                image.SetWidth(250);
                return image;
    }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)