ile kullanım için bir şablon içinde barkodlar oluşturma Başka bir yazılım parçası tarafından xml veri çıktısından PDF formatında faturalar üreten bir proje üzerinde çalışıyorum ve bu faturaların gereksinimlerinden biri, bazıları için barkod oluşturmaktır düğüm verileri ve bunları formda yerleştirin. İdeal olarak, barkodlar, bunları oluşturmak için başka bir program çağırmak yerine şablonun içinden oluşturulacak ve daha sonra şablonun bunları PNG'ler veya başka bir görüntü formatı olarak bulmaya çalışacak şekilde oluşturulmalıdır.Apache FOP
Barcode4j uzantısını kullanmayı denedim, ancak sonuç yok. bu denenmiş olan Kenara
, beni şablonu içinde barkodları oluşturmasına olanak sağlar herhangi bir çözüm derece mutluluk duyacağız
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:barcode="http://barcode4j.krysalis.org/ns" font-size="10pt">
<fo:layout-master-set>
<fo:simple-page-master master-name="master0" page-width="21.0cm" page-height="29.7cm" margin-top="0.0cm" margin-bottom="0.5cm" margin-left="0.5cm" margin-right="0.25cm">
<fo:region-body region-name="body0" margin-top="0.5cm" margin-bottom="0.5cm"/>
<fo:region-before region-name="header0" extent="1.5cm"/>
<fo:region-after region-name="footer0" extent="1.89cm"/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="master0">
<fo:flow flow-name="body0">
<xsl:variable name="CheckMaster" select="count(master_bill_of_lading/details/orders/order)"/>
<xsl:variable name="country" select="master_bill_of_lading/header/Country"/>
<xsl:variable name="barcode-cfg">
<barcode>
<code39>
<height>16mm</height>
<module-width>0.3mm</module-width>
<human-readable>
<placement>none</placement>
</human-readable>
</code39>
</barcode>
</xsl:variable>
<fo:block>
<fo:instream-foreign-object>
<xsl:variable name="bc" select="barcode:generate($barcode-cfg, 123456)" />
<xsl:copy-of select="$bc" />
</fo:instream-foreign-object>
<?xml version="1.0" encoding="UTF-8"?>
... iddia edilen çözümlere tutarlı çevrimiçi referanslar bulmak son derece zordur.
Düzenleme: O zamanlar bir fo içine kullanarak bir barkod oluşturmak yalnızca FOP içindeki yolu ve lib klasörüne dahil kavanozları eklemek gerektirir FOP uzatma barcode4j kullanarak bu sorunu çözmek için başardı: instream- yabancı nesne bloğu