条形码128出现在IE的pdf页面之外

时间:2015-06-02 14:26:42

标签: java image itext barcode

我正在使用Barcode128创建一个图像,并且我正在尝试将其放在PDf文件中,但它正在IE中的页面上: IE_AdobeReader

如果订单号(ETIMS ...)大约为20个字符,则打印正常大小的条形码。 labe2

我尝试了不同的值:

code128.setBarHeight(); 
code128.setX(); 
Image.setWidthPercentage(); 
Image.scaleAbsolute();
Image.scaleToFit();
Image.scalePercent();

但没有任何作用,它就像是设置了宽度和高度的其他东西,而我没有改变它。

发生这种情况的部分代码:

float[] widths1 = { 10f, 4f };
PdfPTable tableReqNumberBarcode;
Paragraph p1 = new Paragraph();
PdfPCell cellReqNumberBarcode;

while (iteratorPDFReader.hasNext()) 
{
   tableReqNumberBarcode = new PdfPTable(widths1);
   cellReqNumberBarcode = new PdfPCell(p1);
   cellReqNumberBarcode.setBorder(Rectangle.NO_BORDER); 
}

page = writer.getImportedPage(pdfReader, pageOfCurrentReaderPDF);
cb.addTemplate(page, 1.15f, 0, 0, 1.15f, 70, 0);
Barcode128 code128 = new Barcode128();                      
code128.setCode(orderNumber);
code128.setFont(null);  //remove printed text under the barcode
code128.setBarHeight(80f); 
code128.setX(1f);

Image myImage = code128.createImageWithBarcode(cb, null, null);
cellReqNumberBarcode.addElement(myImage);

tableReqNumberBarcode.addCell(cellReqNumberBarcode);
document.add(tableReqNumberBarcode);

2 个答案:

答案 0 :(得分:1)

code128.setX(1f);设置最窄条的宽度。将其设置为较低的值以缩小条形码。

答案 1 :(得分:0)

我通过添加setX和setBarHeight()

解决了这个问题
Barcode128 code128 = new Barcode128();                               
code128.setCode(GetReqNumByJobNumber(childJobNumbers[labelNumber], eb, ssb));
code128.setFont(null);  //null removes the printed text under the barcode
code128.setX(0.6f);
code128.setBarHeight(22);
Image myImage = code128.createImageWithBarcode(cb, null, null);
myImage.setAbsolutePosition(10,700);
myImage.scalePercent(125);