喫茶XRAYトップページ
[
スレッド全体
]
[12613]
Re2:Plprevで特殊サイズの用紙
返信
削除
2019/3/5 (火) 17:34:04
Noel
やはり、なかなか難しいものなのですね・・・。
Mr.XRAY様でも難しいなら、私では無理ですねー( ;∀;)。
[12614]
Re3:Plprevで特殊サイズの用紙
返信
削除
2019/3/5 (火) 18:01:38
Mr.XRAY
こんなところを参考にするとか・・・
[ ユーザ定義用紙の作成と削除]
http://
mrxray.
on.
coocan.
jp/
Delphi/
plSetPri
nter/
M_SetUse
rPaper.
htm
[プリントサーバのプロパティで任意サイズの用紙作成]
http://
mrxray.
on.
coocan.
jp/
Delphi/
plSetPri
nter/
B_FreeSi
zePaper.
htm
[テストプログラム UserSizePaper]
http://
mrxray.
on.
coocan.
jp/
Delphi/
plSetPri
nter/
T_UserSi
zePaper.
htm
[12615]
Re4:Plprevで特殊サイズの用紙
返信
削除
2019/3/5 (火) 18:47:25
Noel
▼ Mr.XRAYさん
> こんなところを参考にするとか・・・
>
> [ ユーザ定義用紙の作成と削除]
>
http://
mrxray.
on.
coocan.
jp/
Delphi/
plSetPri
nter/
M_SetUse
rPaper.
htm
>
> [プリントサーバのプロパティで任意サイズの用紙作成]
>
http://
mrxray.
on.
coocan.
jp/
Delphi/
plSetPri
nter/
B_FreeSi
zePaper.
htm
>
> [テストプログラム UserSizePaper]
>
http://
mrxray.
on.
coocan.
jp/
Delphi/
plSetPri
nter/
T_UserSi
zePaper.
htm
いつもご教授ありがとうございます。
プリンター関連は、さっぱりなので、先人の足跡をたどっております。
さて、用紙の追加については、なんとか手動で、プリントサーバーの設定から行えました。
で、いろいろとDelphi-MLの過去ログも読み漁っていたら、NKPrinterを使ってPaperNumberを取得する方法が書いてありました(Delphi-ML:47725からのスレッド)
それをもとに、コードを書いてみて、プレビューの大きさがそれっぽく変わっていることを確認できました。
以下コードですが、テストに使ったものを手打ちで書き込んでいるので、誤字などあるかもしれません。
Delphi環境が、ネットに繋がっていないもので・・・。
Button1をクリックして、ComboBox1で選択すると、用紙のPageNumberが表示されるので、その番号をSetPaperNumberにセットするといけるようです。
間違いがあれば、ご指摘くださいませ。
use NkPrinters;
procedure TForm1.Button1.Click(Sender:TObject);
var
N: TNkPrinter;
begin
N := TNkPrinter.Create;
try
ComboBox1.Clear;
ComboBox1.Items.AddStrings(N.PaperSizeNames);
finally
N.Free
end;
end;
procedure TForm1.ComboBox1Change(Sender: TObject);
var
N : TNkPrinter;
S1 : String;
begin
N := TNkPrinter.Create;
try
S1 := ComboBox1.Items[ComboBox1.ItemIndex];
ShowMessage(S1 + ' = ' + IntToStr(N.PaperSizeNumbers[ComboBox1.ItemIndex]));
finally
N.Free;
end;
end;
procedure TForm1.Button2.Click(Sender: TObject);
begin
// 今回のユーザー定義用紙サイズは102x216mm
plPrev1.DesignedPaperSize(1020, 2160); //適宜変更
plPrev1.plSetPrinter.SetPaperNumber(146); //適宜変更。ComboBox1で選択した時に表示される番号を入れる
plPrev1.BeginDoc;
plPrev1.EndDoc;
plPrev1.ShowModal;
end;
[12616]
Re5:Plprevで特殊サイズの用紙
返信
削除
2019/3/5 (火) 19:46:51
Mr.XRAY
> 間違いがあれば、ご指摘くださいませ。
プログラムは,「勝てば官軍,動けば正義」です.ハイ.
[12617]
Re6:Plprevで特殊サイズの用紙
返信
削除
2019/3/6 (水) 16:34:35
Noel
▼ Mr.XRAYさん
> > 間違いがあれば、ご指摘くださいませ。
>
> プログラムは,「勝てば官軍,動けば正義」です.ハイ.
あ、NkPrinterは、生成&破棄する必要ないですね・・・。
寝ぼけてました・・・。
[12618]
Re7:Plprevで特殊サイズの用紙
返信
削除
2019/3/6 (水) 17:44:48
Mr.XRAY
> あ、NkPrinterは、生成&破棄する必要ないですね・・・。
> 寝ぼけてました・・・。
あっ,ホントに.
スミマセンね.全くチェックしていませんです.ハハハッ (← 笑ってごまかすな !!)
[
▼次のスレッド
]
INCM/CMT
Cyclamen v3.82