FastReport如何自定义纸张尺寸?

lbsxyk 2003-07-01 10:25:37
我现在做软件中,需要打印票据,票据是用户印刷好了的。尺寸是14cm×7cm,但是客户已经购买了打印机,该打印机的自定义纸张中的最小设置为9cm×9cm,不知如何在FastReport中解决?
...全文
525 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
waysoft 2003-07-07
  • 打赏
  • 举报
回复
up
lbsxyk 2003-07-04
  • 打赏
  • 举报
回复
我自己解决了
lbsxyk 2003-07-02
  • 打赏
  • 举报
回复
谢谢Means_pan(酷鱼-Delphi的方向在哪里►►►) ( ) ,我试一下,刚刚用Delphi编程(以前用BCB),怎么Delphi的指针看着怪怪的:-)
kitcause 2003-07-02
  • 打赏
  • 举报
回复
打印条形码用专门的条码打印机效果最好啊。

打印条形码我有经验,呵呵。
lbsxyk 2003-07-02
  • 打赏
  • 举报
回复
我主要是想用户能自定义票据,并且我还需要打印条形码?
Means_pan 2003-07-02
  • 打赏
  • 举报
回复
自定义纸张大小

以下程序将打印机纸张设为:114mm*190mm:

procedure PreparePrinter;

var

aDevice: array[0..CCHDEVICENAME-1] of Char;

aDriver: array[0..MAX_PATH-1] of Char;

aPort: array[0..31] of Char;

hDevMode: THandle;

pDevMode: PDeviceMode;

begin

// 获取打印机DeviceMode的句柄

Printer.GetPrinter(aDevice, aDriver, aPort, hDevMode);

if hDevMode <> 0 then

begin

// 获取指向DeviceMode的指针

pDevMode := GlobalLock(hDevMode);

if pDevMode <> nil then

begin

pDevMode^.dmPaperSize := DMPAPER_USER;

pDevMode^.dmPaperLength := 1140;

pDevMode^.dmPaperWidth := 1900;

pDevMode^.dmFields := pDevMode^.dmFields or DM_PAPERSIZE;

pDevMode^.dmFields := pDevMode^.dmFields or DM_PAPERLENGTH;

pDevMode^.dmFields := pDevMode^.dmFields or DM_PAPERWIDTH;

ResetDC(Printer.Handle, pDevMode^);

GlobalUnlock(hDevMode);

end;

end;

end;

用修改

DeviceMode的方法的话,只是改变你程序中的打印机设置,不会影响其他程序打印的。


lbsxyk 2003-07-02
  • 打赏
  • 举报
回复
我已经用FastReport做出了报表,打印的条形码能完全识别。而且用户也可以自己定义票据格式,但是现在唯一的问题就是对方的打印机的最小高度问题。如果谁能解决这问题,我愿出300分。
blueshu 2003-07-01
  • 打赏
  • 举报
回复
你用的是什么打印机?
我也做过票打
我是用pritner直接输出的
blueshu 2003-07-01
  • 打赏
  • 举报
回复
不能自定义纸张了?
lbsxyk 2003-07-01
  • 打赏
  • 举报
回复
高手们帮帮忙
Cheney 2003-07-01
  • 打赏
  • 举报
回复
我也想知道!
陈燕君 2003-07-01
  • 打赏
  • 举报
回复
cyj888888@sina.com

5,928

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧