有可以旋转的字体
你试试看吧procedure TForm1.Button1Click(Sender: TObject);
var
  lf: TLogFont;
  tf: TFont;
begin
  with Label1 do begin
    Width := 137;
    Height := 97;
    AutoSize := False;
  end;  Label1.Font.Name := '黑体'; //要用TrueType字体
  Label1.Font.Size := 24;
  tf := TFont.Create;
  tf.Assign(Label1.Font);
  GetObject(tf.Handle, SizeOf(lf), @lf);
  lf.lfEscapement := 450; //旋转的角度(单位0.1度)
  lf.lfOrientation := 450;
  tf.Handle := CreateFontIndirect(lf);
  Label1.Font.Assign(tf);
  Label1.Font.Handle := CreateFontIndirect(lf);
  Label1.Caption := #13#10#13#10'Hello';
  tf.Free;
end;

解决方案 »

  1.   

    //垂直用
      lf.lfEscapement := 900; //旋转的角度(单位0.1度)
      lf.lfOrientation := 900;
      

  2.   

    你是把字段名坚显还是把记录坚显?如果是字段名,可以用一个土办法。就是用两个以上的qrlabel,上下行共同显示一个字段名,因为用qreport做报表时字段名是要自己设的。这样不用编程,也省资源。
      

  3.   

    可以的,我用过一种笨方法:
     用QRDBtext连上数据后,把AutoStretch=true,Autosize=false,把QRDBtext的宽度设为一个字的宽度(要慢慢调整),这样就会自动换行。然后把每个字段(QREBtext,属性都为上面所说的)都竖排起来:
        DBTEXT1
        DBTEXT2
        DBTEXT3
        ......
    对了,这样只能有一列,可以设QUICKrep.page.columns=n,那么就会有n列了
    比较笨,不过可以试一下