我用的FastReport的版本是4.5的,打印出来如果没有超过15位的都可以扫描的到,如果超过15位就扫描不到,打印的纸张宽度是6CM,高度是2.5CM,以为是打印时没有打完,所以后来用A4纸打,同样也是扫描不到,而我扫描本本上的条码已经超过20位也是可以扫到,我想问题应该就是出在FastReprot这里了,我想问一下有什么解决的方法,谢谢。

解决方案 »

  1.   

    不用十进制表示,改用其它进制,例如二进制:{相关函数}
    function IntToBin(Value: LongInt; Size: Integer): String;
    var
      i: Integer;
    begin
      Result:='';
      for i:=Size-1 downto 0 do
      begin
        if Value and (1 shl i)<>0 then
          Result:=Result+'1'
        else
          Result:=Result+'0';
      end;
    end;
    调用:procedure TForm1.Button1Click(Sender: TObject);
    begin
     edit1.Text:=IntToBin(111000011,2);{十进制下的111000011的数字,结果转了之后变为:11}
    end;
    扫回来时再处理,转为10进制.