在多列中打印条形码

时间:2012-07-04 16:46:02

标签: javascript printing barcode

我有一个文件打印出条形码和isbn的书籍,我的问题是它只在页面上打印一列。我想在每页打印2到3列(如果页面支持那么多列)。我正在使用javascript生成带有书名的条形码。这是代码:

    for (x=0;x<data.isbn.length;x++)
    {
                if (x == 5){
                '<div class="page-break"></div>';
                } else 
                first += '$("#'+indexGlobal+'").barcode("'+isbn[x]+'", "codabar",{barHeight:40, fontSize:30, output:"bmp"});';
        second += '<div class="wrapper"><div id="'+indexGlobal+'"></div><div class="fullSKU">&nbsp &nbsp &nbsp '+isbn[x]+
                '</div><br/><div class="title">'+title[x]+'</div></div>&nbsp &nbsp';
        indexGlobal++;

                }
                }
            });//end of ajax call

        var barcode =  window.open('','BarcodeWindow','width=400');
        var html = '<html><head><title>Barcode</title><style type="text/css">'+
        '.page-break{display:block; page-break-before:always; }'+
        'body{width: 2in;}'+
        '.wrapper{height: 1in;margin-left:10px;margin-top:5px;margin-right:5px;}'+
        '.fullSKU{float: left;}'+
        '.shortSKU{float: right;font-size:25px;font-weight:bold;}'+
        '.title{float: left;}'+
        '</style><script type="text/javascript"src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.js"></script><script type="text/javascript" src="../barcode/jquery-barcode.js"></script><script>$(document).ready(function() {'+first+'window.print();window.close();});</script></head><body>'+second+'</body></html>';
        barcode.document.open();
        barcode.document.write(html);
        barcode.document.close();

有关多列打印的建议吗?

1 个答案:

答案 0 :(得分:0)

我的一位朋友指出了我正确的方向。我改变了身体的宽度

'body{width: 2in;}'+

是页面的大小(10英寸,因为它将打印横向),然后使用3列的css3属性:

'body{width: 10in;-moz-column-count:3; -webkit-column-count:3;column-count:3;}'

希望这会帮助其他人。