FastReport如何打印二维条形码?
解决方案 »
- 请教各位大大,为何我把TCPClient放在线程里使用,然后在free线程时会卡住?
- 线程与VCL同步及子类继承的问题
- 这个东西是什么,有点看不懂
- table is busy
- bsskinedit字体颜色为什么那淡?
- 如何把自己做的组件加入到自己开发的系统中?
- 关于网吧管理软件的问题,请看一下,在线等待
- 这段代码哪里有问题呢?
- 我将real player自带的activex控件导入delphi,自己做了一个程序,但它必须得先安装real player后才能运行,怎样才能解除这一限制
- 关于一个窗体显示的问题,希望大家帮忙!
- TChart中如何通过鼠标所在X坐标获取X轴值
- DELPHI用OLD控件调用WORD,但不要工具栏和菜单栏,要求在OLD的控件内部显示,能滚动
找到frxBarcod.pas
TfrxBarcodeType =
(
bcCode_2_5_interleaved,
bcCode_2_5_industrial,
bcCode_2_5_matrix,
bcCode39,
bcCode39Extended,
bcCode128A,
bcCode128B,
bcCode128C,
bcCode93,
bcCode93Extended,
bcCodeMSI,
bcCodePostNet,
bcCodeCodabar,
bcCodeEAN8,
bcCodeEAN13,
bcCodeUPC_A,
bcCodeUPC_E0,
bcCodeUPC_E1,
bcCodeUPC_Supp2, { UPC 2 digit supplemental }
bcCodeUPC_Supp5, { UPC 5 digit supplemental }
bcCodeEAN128A,
bcCodeEAN128B,
bcCodeEAN128C,
这里添加二维条形码的名称
);增加一个类似
function Code_Supp2: AnsiString;的函数
在procedure DrawBarcode(Canvas: TCanvas; ARect: TRect; ShowText: Boolean);里增加对二维条形码的算法。
bcCodeUPC_E1: // 7 digits, 6+1
begin
TextOutR(3, 3, 44, Copy(FText, 1, 6));
TextOutR(BarWidth + 1, BarWidth + 1, BarWidth + 8, Copy(FText, 7, 1));
end;
else
begin
TxtWidth := TextWidth(String(FText));
TextOutR((BarWidth - TxtWidth) div 2, 0, BarWidth, FText);
end;
//在这里添加算法来画
end;其他的再调整一下就好了!
重新编译FastReport!
另外一种就是动态建立,然后采用图形赋值的方法!