長い間、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;
> Canvas.TextHeightのところで実パラメーターが足りませんというエラー表示が出ます。
Vcl.Graphics.TCustomCanvas.TextHeight
http://docwiki.embarcadero.com/Libraries/Rio/ja/Vcl.Graphics.TCustomCanvas.TextHeight
を見ると、
function TextHeight(const Text: string): Integer;
とありますので、引数が必要みたいですね。
igyさん、ありがとうございました。
文書名と最後の行だけ印刷できました。
いろいろ試してみます。
ありがとうございました。
全文印刷できました。
ツイート | ![]() |