Форум: "Основная";
Текущий архив: 2002.05.06;
Скачать: [xml.tar.bz2];
ВнизПомогите расположить текст вертикально. Найти похожие ветки
← →
Axenow (2002-04-21 12:41) [0]Есть программа она должна выводить огромное количество отчетов, и часть отчетов должны иметь текст, который повернут на 90 градусов.... Пользуюсь QuickRep, но если надо пересяду на другие компоненты по отчетам..
ОЧЕНЬ НАДО!
← →
Anatoly Podgoretsky (2002-04-21 12:45) [1]На сайте производителя
← →
Andrey007 (2002-04-23 09:35) [2]function CreateRotatedFont(F: TFont; Angle: Integer): hFont;
{-create a rotated font based on the font object F}
var LF: TLogFont;
begin
FillChar(LF, SizeOf(LF), #0);
with LF do
begin
lfHeight := F.Height;
lfWidth := 0;
lfEscapement := Angle*10;
lfOrientation := 0;
if fsBold in F.Style then lfWeight := FW_BOLD
else lfWeight := FW_NORMAL;
lfItalic := Byte(fsItalic in F.Style);
lfUnderline := Byte(fsUnderline in F.Style);
lfStrikeOut := Byte(fsStrikeOut in F.Style);
lfCharSet := RUSSIAN_CHARSET;
StrPCopy(lfFaceName, F.Name);
lfQuality := DEFAULT_QUALITY; {everything else as default}
lfOutPrecision := OUT_DEFAULT_PRECIS;
lfClipPrecision := CLIP_DEFAULT_PRECIS;
case F.Pitch of
fpVariable : lfPitchAndFamily := VARIABLE_PITCH;
fpFixed : lfPitchAndFamily := FIXED_PITCH;
else lfPitchAndFamily := DEFAULT_PITCH;
end
end;
Result := CreateFontIndirect(LF);
end;
procedure RotateTextOut(Text: String; X,Y,Angle: Integer; Canva: TCanvas);
begin
Canva.Font.Handle:=CreateRotatedFont(Font,Angle);
Canva.TextOut(X,Y,Text);
Canva.Font.Handle:=CreateRotatedFont(Font,0);
end;
Поворачивает только векторные шрифты (True Type). А вообще есть компоненты, в которых есть возможность выводить текст под углом - типа TLabel и т.д.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.05.06;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.005 c