Конференция "Прочее" » Центрирование повернутого текста
 
  • AenorRisen © (15.06.08 17:57) [0]
    Здравствуйте!
  • AenorRisen © (15.06.08 18:01) [1]
    Есть такая ситуация: необходимо выводить повернутый текст на TCanvas, но с одним условием - он должен центрироваться (планируется анимация), т.е. должны смешаться координаты x и y начала текста с определенной системой. Помогите написать алгоритм вычисления x и y в зависимости от размеров Canvas и размера шрифта.
  • antonn © (15.06.08 18:07) [2]
    а как он выводится повернутым?
  • @!!ex © (15.06.08 18:34) [3]
    Function  OSAL_GetTextSize(const Text:string):TPoint;
    {$ifdef win32}
    var
     Size:TSize;
    begin
     GetTextExtentPoint32(h_Dc,PChar(Text),Length(Text),Size);
     Result.x:=Size.cx;
     Result.y:=Size.cy;
    end;
    {$else}
    var
     direction, ascent, descent:integer;
     XCharStruct:TXCharStruct;
    begin
     if CurrentFont<>nil then
       XTextExtents(CurrentFont,PChar(Text),Length(Text),@direction, @ascent, @descent,@XCharStruct);
     Result.x:=XCharStruct.width;
     Result.y:=ascent + descent;
    end;
    {$endif}
 
Конференция "Прочее" » Центрирование повернутого текста
Есть новые Нет новых   [134437   +29][b:0][p:0]