16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル
"印刷用紙名の取得(簡易版)"
この発言に対し以下のコメントが寄せられています
#00401 ありい さん RE:印刷用紙名の取得(簡易版)
{
印刷用紙名の取得は、プリンタ特有の用紙名設定をプリンタドライバーから
取得する方法がありますが、今回のは、簡易版として設定したものです。
uses 節にPrintersを追加して下さい。
使う時は、Labelなら、
Label1.caption:=NowPaper;
Edit1.text:=NowPaper;
などとします。
private
function NowPaper:string;
を入れます。
}
function TForm1.NowPaper:string;
const m254=25.39999;
var
Pname,Pdrv,Pport:array[0..255] of char;
DeviceMode:THandle;
dmw:^TDevMode;
sp:integer;
sps:string;
begin
printer.getprinter(Pname,Pdrv,Pport,DeviceMode);
dmw:=GlobalLock(DeviceMode);
sp:=dmw^.dmPaperSize;
case sp of
dmPaper_Letter :sps:='レター';
dmPaper_LetterSmall :sps:='レターS';
dmPaper_Tabloid :sps:='タブロイト';
dmPaper_Ledger :sps:='Ledger';
dmPaper_Legal :sps:='Legal';
dmPaper_Statement :sps:='ステートメント';
dmPaper_Executive :sps:='エグゼクティブ';
dmPaper_A3 :sps:='A3';
dmPaper_A4 :sps:='A4';
dmPaper_A4Small :sps:='A4S';
dmPaper_A5 :sps:='A5';
dmPaper_B4 :sps:='B4';
dmPaper_B5 :sps:='B5';
dmPaper_Folio :sps:='フォリオ';
dmPaper_Quarto :sps:='クワトロ';
dmPaper_10X14 :sps:='10x14 インチ';
dmPaper_11X17 :sps:='11x17 インチ';
dmPaper_Note :sps:='ノート';
dmPaper_Env_9 :sps:='#9';
dmPaper_Env_10 :sps:='#10';
dmPaper_Env_11 :sps:='#11';
dmPaper_Env_12 :sps:='#12';
dmPaper_Env_14 :sps:='#14';
{
dmPaper_CSheet :sps:='C';
dmPaper_DSheet :sps:='D';
dmPaper_ESheet :sps:='E';
dmPaper_Env_DL :sps:='Envelope DL 110 x 220mm';
dmPaper_Env_C5 :sps:='Envelope C5 162 x 229 mm';
dmPaper_Env_C3 :sps:='Envelope C3 324 x 458 mm';
dmPaper_Env_C4 :sps:='Envelope C4 229 x 324 mm';
dmPaper_Env_C6 :sps:='Envelope C6 114 x 162 mm';
dmPaper_Env_C65 :sps:='Envelope C65 114 x 229 mm';
dmPaper_Env_B4 :sps:='Envelope B4 250 x 353 mm';
dmPaper_Env_B5 :sps:='Envelope B5 176 x 250 mm';
dmPaper_Env_B6 :sps:='Envelope B6 176 x 125 mm';
dmPaper_Env_Italy :sps:='Envelope 110 x 230 mm';
dmPaper_Env_Monarch :sps:='Envelope Monarch 3.875 x 7.5 in';
dmPaper_Env_Personal:sps:='6 3/4 Envelope 3 5/8 x 6 1/2 in';
dmPaper_Fanfold_US :sps:='US Std Fanfold 14 7/8 x 11 in';
dmPaper_Fanfold_Std_German :sps:='German Std Fanfold 8 1/2 x 12 in';
dmPaper_Fanfold_Lgl_German :sps:='German Legal Fanfold 8 1/2 x 13 in';
dmPaper_First :sps:='Letter 8 1/2 x 11 in';
dmPaper_Last :sps:='dmPaper_Fanfold_Lgl_German';
}
end;
result:=sps;
end;
//{}内を表示すると、なぜがエラーになるので、コメントにしてあります。
----------------------------------------------------------------------
1998.01.15(木) 一品斎 CXD02261
======================================================================
Original document by 一品斎 氏 ID:(CXD02261)
ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。
Copyright 1996-2002 Delphi Users' Forum
|