是否可以打印PostScript

I

import

Unregistered / Unconfirmed
GUEST, unregistred user!
判断打印机能否打印PostScript
 
uses Printers;
function IsPostScriptPrinter(dc : hdc) : bool;
var
TestInt : integer;
a : array[0..255] of char;
err : integer;
s : string;
begin
Result := false;
TestInt := GETTECHNOLOGY;
{$IFDEF WIN32}
if ExtEscape(Dc,
QUERYESCSUPPORT,
sizeof(TestInt),
@TestInt,
0,
Nil) > 0 then begin
Err := ExtEscape(Dc,
GETTECHNOLOGY,
0,
nil,
256,
@a);
{$ELSE}
if Escape(Dc,
QUERYESCSUPPORT,
sizeof(TestInt),
@TestInt,
Nil) > 0 then begin
Err := Escape(Dc,
GetTechnology,
0,
nil,
@a);
{$ENDIF}
if Err > 0 then begin
s := UpperCase(StrPas(a));
if Pos('POSTSCRIPT', s) > 0 then
result := true;
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if PrintDialog1.Execute then
if IsPostScriptPrinter(Printer.Handle) then
ShowMessage('This is a Postscript Printer') else
ShowMessage('This is not a Postscript Printer');
end;
 

Similar threads

S
回复
0
查看
606
SUNSTONE的Delphi笔记
S
S
回复
0
查看
606
SUNSTONE的Delphi笔记
S
I
回复
0
查看
978
import
I
I
回复
0
查看
668
import
I
I
回复
0
查看
572
import
I
顶部