memo1の文を印刷したいのですが??

解決


AS  2020-04-17 00:15:39  No: 148707

長い間、delphiを使っていますが、印刷はどうしたらいいのだろうと思い、
ここで検索したら、2004年に質問されていた下記のような投稿がありました。
Canvas.Font.HeightをCanvas.TextHeightに変えたらいいのだそうですが、
変えてコンパイルすると、Canvas.TextHeightのところで実パラメーターが
足りませんというエラー表示が出ます。
一応、textheightとかCanvasとかHelpで調べたのですが、よくわかりませんでした。

何が悪いのか、分かる方、よろしくお願いします。
また、もっと簡単な方法があれば教えてください。

パソコンでは、PC9801で印刷するプログラムを一度だけ組んだ経験しかありません。

var 
Line: Integer; 
P:TPrintDialog; 
begin 
P:=TPrintDialog.Create(Self); 
if P.Execute then 
begin 
     with Printer do begin 
       BeginDoc; 
       Canvas.Font.Size:=12; 
       Canvas.TextOut(100, 10, Self.Caption); 
       for Line:=0 to MainEdit.Lines.Count-1 do 
       begin 
       Canvas.TextOut(10, Canvas.Font.Height+30+(Canvas.Font.Height+1*Line), MainEdit.Lines[Line]); 
       end; 
       EndDoc; 
     end; 
end; 
P.Free; 
end;


igy  2020-04-17 13:36:30  No: 148708

> Canvas.TextHeightのところで実パラメーターが足りませんというエラー表示が出ます。

Vcl.Graphics.TCustomCanvas.TextHeight
http://docwiki.embarcadero.com/Libraries/Rio/ja/Vcl.Graphics.TCustomCanvas.TextHeight
を見ると、
function TextHeight(const Text: string): Integer;
とありますので、引数が必要みたいですね。


AS  2020-04-17 18:37:40  No: 148709

igyさん、ありがとうございました。

文書名と最後の行だけ印刷できました。

いろいろ試してみます。


AS  2020-04-17 18:54:37  No: 148710

ありがとうございました。

全文印刷できました。


※返信する前に利用規約をご確認ください。








  このエントリーをはてなブックマークに追加