喫茶XRAYトップページ

[スレッド全体
]

[748] 印刷プレビュー制御コンポーネントに関して2つほど返信 削除
2006/4/24 (月) 14:26:16 cham
Mr.XRAYさん、こんにちは。

いつもコンポーネントを便利に活用させていただいております。

2つほど質問です。

1.複数ページある場合、後ろの数ページが印字されないことがあります。
  プレビューしてからの印刷では問題ありません。

2.罫線で点線を印字するとプレビューでは点線になっていますが、実際の
  印刷時に実線になっている。

1.は具体的には下記のように処理しています。

procedure HeadPrint;
begin

end;

[749] Re:印刷プレビュー制御コンポーネントに関して2つほど返信 削除
2006/4/24 (月) 14:36:36 cham
Mr.XRAYさん、こんにちは。

すいません、先ほど途中で送信されてしまいました。

1.は具体的には下記のように処理しています。

procedure HeadPrint;
begin
 if 初回なら then plPrev1.BeginDoc
  else             plPrev1.NewPage;
end;

procedure MeisaiPrint;
begin
  wihile (db.eof <> true) do
  begin
    if 改ページチェック then HeadPrint;
    明細プリント処理
    db.Next;
  end;
  if 1行でも印刷した then
  begin
    plPrev1.EndDoc;
    plPrev1.Print;
  end;
end;


2.は

plPrev1.PenWidth( 1 );
plPrev1.PenStyle( psDot );
plPrev1.Line( A4Left, A4Right, line, line );

※A4Left,A4Rightは固定値です。それぞれ 100と1800です。
  line は行数から算出した値がはいっています。

1.はとりあえずプレビューしてからであれば問題ないので現在は
そのようにしてあります。環境がいけないのか、コーディングがいけないのか
判断できず質問させていただきました。

2.はプリンタの問題なのでしょうか。やはりどこがいけないのか判断できず
質問させていただきました。

[750] Re2:印刷プレビュー制御コンポーネントに関して2つほど返信 削除
2006/4/24 (月) 18:39:01 Syake
解決策ではありません。
追い討ちをかけるがごとく・・・

> 2.は
>
> plPrev1.PenWidth( 1 );
> plPrev1.PenStyle( psDot );
> plPrev1.Line( A4Left, A4Right, line, line );
>
> ※A4Left,A4Rightは固定値です。それぞれ 100と1800です。
>   line は行数から算出した値がはいっています。
>
> 2.はプリンタの問題なのでしょうか。やはりどこがいけないのか判断できず
> 質問させていただきました。


プリンターではないような・・・・
RoundRect、Rectangleも同じですね。
線を描画するのだから結果同じことなのかなぁ?
今まで点線は使ったことがありませんでしたが同じくそうなってしまいます。
プリンターを3機種試みましたが結果は全て同じでした。

[751] Re3:印刷プレビュー制御コンポーネントに関して2つほど返信 削除
2006/4/24 (月) 21:46:30 cham
▼ Syakeさん

> プリンターではないような・・・・
> RoundRect、Rectangleも同じですね。
> 線を描画するのだから結果同じことなのかなぁ?
> 今まで点線は使ったことがありませんでしたが同じくそうなってしまいます。
> プリンターを3機種試みましたが結果は全て同じでした。


テストしていただきありがとうございます。
プリンターや環境の問題ではなさそうなので、すっきりしました。
とりあえずプログラム内でなんとか点線に見えるように誤魔化して
処理しようと思います。

[▼次のスレッド]
INCM/CMT
Cyclamen v3.82