上一篇 | 下一篇

Rave中横向打印的解决方案

发布: 2008-6-26 17:57 | 作者: admin | 来源: | 查看: 2次

双击RvProject1,打开设计器,取page的属性页,把orientation属性设为poLandScape

便可。

如果要用代码实现,则如下代码procedure TMainForm.SetOrient();

var

ADevice, ADriver, APort: String;

ADeviceMode: THandle;

DevMode: PDeviceMode;

begin

SetLength(ADevice, 255);

SetLength(ADriver, 255);

SetLength(APort, 255);

{ If ADeviceMode is zero, a printer driver is not loaded. Therefore,

setting PrinterIndex forces the driver to load. }

if ADeviceMode = 0 then

begin

Printer.PrinterIndex := Printer.PrinterIndex;

Printer.GetPrinter(PChar(ADevice), PChar(ADriver), PChar(APort), ADeviceMode);

end;

if ADeviceMode <> 0 then

begin

DevMode := GlobalLock(ADeviceMode);

try

DevMode^.dmFields := DevMode^.dmFields or DM_ORIENTATION;

DevMode^.dmCopies := DMORIENT_LANDSCAPE;//横向打印

DMORIENT_PORTRAIT//竖向打印

finally

GlobalUnlock(ADeviceMode);

end;

end

else

raise Exception.Create('Could not set printer copies');

end;

(出处:Delphi园地)

字号: | 推荐给好友

评分:0

我来说两句

网络推荐