喫茶XRAYトップページ


[2287] プレビュー印刷で!?返信 削除
2009/4/16 (木) 12:22:33 Syake
マスターお久しぶりです。
この一週間、春を一気に通り過ぎ初夏を思わせる暑さです。
当地広島では、新球場(通称:マツダスタジアム)が完成し
例年よりも盛り上がっているようです。
私めも、ほとぼりが冷めた頃に、こっそりと・・・・

ところで、印刷プレビューなんですが、「あれ、電話番号の右
端が切れてるな」などと気付いてから何でだろう?などと苦闘
しておりました。
procedure TForm1.Button1Click(Sender: TObject);
var
  i,j,X1,X2,Y1,Y2 :Integer;
begin
  plSetPrinter1.PaperNumber := DMPAPER_A4;
  plPrev1.plSetPrinter := plSetPrinter1;
  plPrev1.BeginDoc;
  try
    with plPrev1 do
    begin
      with Canvas do
      begin
        FontName('MS P明朝');
        FontSize(11);
        Y1 := 100; Y2 := Y1 + 50;
        TextRectRC(100,500,Y1,Y2,'000-000-0000');
        Y1 := Y2; Y2 := Y1 + 50;
        TextRectRC(100,500,Y1,Y2,'(000)000-0000');
        Y1 := Y2; Y2 := Y1 + 50;
        TextRectRC(100,500,Y1,Y2,'000-0000');
        Y1 := Y2; Y2 := Y1 + 50;
        TextRectRC(100,500,Y1,Y2,'0,000,000');
        Y1 := Y2; Y2 := Y1 + 50;
        TextRectRC(100,500,Y1,Y2,'000-000-000-000-0000');
        Y1 := Y2; Y2 := Y1 + 50;
        TextRectRC(100,500,Y1,Y2,'0000000000000000');
        Y1 := Y2; Y2 := Y1 + 50;
        TextRectRC(100,500,Y1,Y2,'あいうえおかきくけこ');
        Y1 := Y2; Y2 := Y1 + 50;
        TextRectRC(100,500,Y1,Y2,'あいう-えおかき-くけこ');
        Y1 := Y2; Y2 := Y1 + 50;
        FontName('MS 明朝');
        TextRectRC(100,500,Y1,Y2,'000-000-000-000-0000');
        Y1 := Y2; Y2 := Y1 + 50;
        TextRectRC(100,500,Y1,Y2,'0000000000000000');
        X1 := 150;
        Y1 := 200;
      end;
    end;
  finally
    plPrev1.EndDoc;
  end;
  plPrev1.ShowModal;
end;

しかし、最終的に出た結論。
なんだVistaだからか。


[2288] Re:プレビュー印刷で!?返信 削除
2009/4/16 (木) 15:43:48 Mr.XRAY
> しかし、最終的に出た結論。
> なんだVistaだからか。


えっ,でもマズイっすよ,これ.
ん?  いや仕様です (^ ^;)

[2305] Re2:プレビュー印刷で!?返信 削除
2009/4/18 (土) 18:11:53 Mr.XRAY
> えっ,でもマズイっすよ,これ.
> ん?  いや仕様です (^ ^;)


参りました.後でゆっくり調査ですね.
フォント幅か文字列の幅が正確に取得できていないようですね.
もしかして,反転文字列の時と同じ原因なのでしょうか.

[2311] Re3:プレビュー印刷で!?返信 削除
2009/4/20 (月) 19:00:11 Mr.XRAY
もうしばらくお待ちいただけますか.
お願いします.

[2312] Re4:プレビュー印刷で!?返信 削除
2009/4/21 (火) 14:09:15 Syake
▼ Mr.XRAYさん
> もうしばらくお待ちいただけますか.
> お願いします.


ありがとうございます。m(__)m
いやいや、当方は急ぎませんので大丈夫です。
TextOutXXでは問題ないのでこれで今やってます。

しかし、Vistaでは他でも頭の痛い問題がありますね。
やってる本人は頭にきます。


[2313] Re5:プレビュー印刷で!?返信 削除
2009/4/22 (水) 05:21:52 Mr.XRAY
> いやいや、当方は急ぎませんので大丈夫です。
> TextOutXXでは問題ないのでこれで今やってます。


すみませんね.
少し分かってきました.文字幅は問題ないようですが,
文字列の右端(RX関係),多端(LX関係)等の取得に問題があることが
わかりました.Vistaで仕様が変わったのでしょう.マイクロソフトの
資料はまだ見つかっていません.
Windows2000の時も文字幅の問題があり,資料がすぐ見つかったのてずが...
一応目安はつきましたが,他のOSでのテストもありますので.
時間が少しかかりそうです.

> しかし、Vistaでは他でも頭の痛い問題がありますね。

なんですよ.
ワード操作とエクセル操作フォームも何とかしたいのですが,
レジストリを操作する必要がありそうです.
でも,レジストリの操作は管理者権限が必要なので,何か打開策が
ないか模索中です.

[2314] Re6:プレビュー印刷で!?返信 削除
2009/4/22 (水) 05:46:07 Mr.XRAY
> わかりました.Vistaで仕様が変わったのでしょう.マイクロソフトの
> 資料はまだ見つかっていません.


今わかっているのは,どうも2ピクセル分広くなるようです.
印刷プレビューではこの量は,用紙幅によつて違うことになります.

INCM/CMT
Cyclamen v3.82