線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1543
推到 Plurk!
推到 Facebook!

Firemonkey 列印字體大小問題?

尚未結案
OneChen
初階會員


發表:7
回覆:33
積分:43
註冊:2014-03-27

發送簡訊給我
#1 引用回覆 回覆 發表時間:2015-01-21 09:35:00 IP:175.181.xxx.xxx 訂閱
XE7 Firemonkey 的列印文字, 字體似乎有些問題, 顯示看起來正常, 但列印時, 字體變大了很多, 但一般的畫線座標都很正常, 不知道什麼問題?
OneChen
初階會員


發表:7
回覆:33
積分:43
註冊:2014-03-27

發送簡訊給我
#2 引用回覆 回覆 發表時間:2015-01-21 09:37:31 IP:175.181.xxx.xxx 訂閱
程式碼如下:

[code delphi]

unit Main;
interface
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.StdCtrls,
FMX.Objects, FMX.Printer;

type
TForm1 = class(TForm)
PaintBox1: TPaintBox;
ToolBar1: TToolBar;
Button1: TButton;
procedure PaintBox1Paint(Sender: TObject; Canvas: TCanvas);
procedure Button1Click(Sender: TObject);
private
procedure TestPaint(Canvas: TCanvas; const Rect1: TRectF);
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation
{$R *.fmx}
procedure TForm1.TestPaint(Canvas: TCanvas; const Rect1: TRectF);
var i: Integer;
h, w: Single;
begin
h := Rect1.Height / 20;
w := Rect1.Width / 20;

Canvas.Stroke.Color := TAlphaColors.Lightgray;
for i:=1 to 99 do
begin
Canvas.DrawLine(PointF(i * w, 0), PointF(i * w, Rect1.Height), 1);
Canvas.DrawLine(PointF(0, i * h), PointF(Rect1.Width, i * h), 1);
end;

Canvas.DrawRect(Rect1, 0, 0, AllCorners, 1);
Canvas.Font.Size := h;
Canvas.Fill.Color := TAlphaColors.Black;
Canvas.FillText(RectF(0, h * 9, Rect1.Width, h * 10), 'Hello world', False, 1, [], TTextAlign.Center, TTextAlign.Center);
end;

procedure TForm1.PaintBox1Paint(Sender: TObject; Canvas: TCanvas);
begin
TestPaint(Canvas, PaintBox1.LocalRect);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Printer.ActivePrinter.SelectDPI(1200, 1200);
Printer.BeginDoc;
TestPaint(Printer.Canvas, RectF(0, 0, Printer.PageWidth, Printer.PageHeight));
Printer.EndDoc;
end;

end.
[/code]

系統時間:2024-04-20 12:32:32
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!