WelcomeLabel1.Font.Handle := IsPicReFont(WelcomeLabel1.Font.Height, FW_BOLD, False);
Вместо FW_BOLD поставь 100 и увидешь что робит.
Вместо FW_BOLD поставь 100 и увидешь что робит.
sergey3695, Жирность то да но шрифт нет...Вместо FW_BOLD поставь 100 и увидешь что робит
WelcomeLabel1.Font.Handle := IsPicReFont(WelcomeLabel1.Font.Height, 1000, False);
with WelcomeLabel1 do begin
//
end;
Без этой строчки WelcomeLabel1.Font.Handle := IsPicReFont(WelcomeLabel1.Font.Height, FW_BOLD, False);Какой шрифт
Так жирность тепер не пашет кодShift85, Врубился
вот так робит.Код:WelcomeLabel1.Font.Handle := IsPicReFont(WelcomeLabel1.Font.Height, 1000, False); with WelcomeLabel1 do begin // end;
WelcomeLabel1.Font.Handle := IsPicReFont(WelcomeLabel1.Font.Height, FW_BOLD, False);
with WelcomeLabel1 do begin
AutoSize:=False;
SetBounds(ScaleX(30), ScaleY(165), ScaleX(540), ScaleY(50));
WordWrap:=True;
//Alignment := taCenter;
//Transparent:=True;
Font.Name:='Georgia';
Font.Size:= 14;
Font.Color:=$FFFFFF;
//Font.Style:=[fsBold];
Caption:= ExpandConstant('{cm:WelcomeLabel1}');
Parent:=WizardForm;
end;
WelcomeLabel2.Font.Handle := IsPicReFont(WelcomeLabel2.Font.Height, FW_BOLD, False);
with WelcomeLabel2 do begin
AutoSize:=False;
SetBounds(ScaleX(30), ScaleY(240), ScaleX(540), ScaleY(100));
WordWrap:=True;
//Alignment := Center;
//Transparent:=True;
Font.Name:='Georgia';
Font.Size:= 10;
Font.Color:=$FFFFFF;
//Font.Style:=[fsBold];
Caption:= ExpandConstant('{cm:WelcomeLabel2}');
Parent:=WizardForm;
end;
const // æèðíîñòü øðèôòà
FW_DONTCARE = 0;
FW_THIN = 100;
FW_ULTRALIGHT = 200;
FW_LIGHT = 300;
FW_NORMAL = 400;
FW_MEDIUM = 500;
FW_DEMIBOLD = 600;
FW_BOLD = 700;
FW_ULTRABOLD = 800;
FW_BLACK = 900;
function IsPicReFont(height, Weight : Integer; Italic : Boolean) : HWND;
external 'IsPicReFont@files:IsPicture2.dll stdcall delayload';
// ïîäìåíà øðèôòà äëÿ áîðüáû ñ àðòåôàêòàìè ñãëàæèâàíèÿ
// height - Font.Height
// Weight - æèðíîñòü
// Italic - íàêëîííîñòü
библитека работает по принципу цветовой маски. если в системе отключено сглаживание Cleartype, то разницы не будет, а вот с ним - получаются грязные края букв, смотрится очень неопрятно, для устранения и была создана эта функция. Просто на статичной картинке это не бросается в глаза, но если приглядется, то грязь эту видно.с картинкой разницы невижу
Так пробуйwizardform.beveledlabel.hide;
не скрывает лейблы,сейчас попробую не много по другом
я не работаю со сглаживанием. примитивный пример где-то был выложен, сейчас уже не помню, суть в том, что просто с помощью функции CreateFont создается свой шрифт, и параметр fdwQuality задается любой, кроме CLEARTYPE_QUALITY. я задаю ANTIALIASED_QUALITY, это и достаточно сглажено и еще нет артефактов и полученыей дескриптор задается нужному шрифту. кстати там есть довольно интересный параметр - nOrientation, с ним прикольно поиграться, думаю, стоит его добавить. правда, на лейблах скорей всего работать не будет, но длл-ка и делалась изначально для того, чтоб сохранить максимальную дефолтность инсталлятора.а отдельно можно библиотеку для работы со шрифтами (Cleartype)?
[Setup]
AppName=My Application
AppVersion=1.5
DefaultDirName={pf}\My Application
[Code]
type
HFONT = LongWord;
function CreateFont(nHeight, nWidth, nEscapement, nOrientaion, fnWeight: Integer;
fdwItalic, fdwUnderline, fdwStrikeOut, fdwCharSet, fdwOutputPrecision,
fdwClipPrecision, fdwQuality, fdwPitchAndFamily: DWORD; lpszFace: PAnsiChar): HFONT; external 'CreateFontA@gdi32.dll stdcall delayload';
var
i: Integer;
procedure NewFont(Font : TFont; nOr : Integer);
begin
Font.Handle := CreateFont(Font.Height, 0, nOr, nOr, 400, 0, 0, 0,0, 0, 0,0, 0, Font.Name);
end;
procedure TMRTimer(Sender: TObject);
begin
if i = 0 then i := 360;
NewFont(WizardForm.WelcomeLabel2.Font, i*10);
i := i-10;
end;
procedure InitializeWizard();
begin
i := 360;
NewFont(WizardForm.WelcomeLabel2.Font, i);
with TTimer.Create(WizardForm) do
begin
Interval := 40;
OnTimer := @TMRTimer;
end;
end;
WizardForm.WelcomeLabel2.Caption:= #13#10'Вас приветствует Мастер установки наклонного текста';
NewFont(WizardForm.WelcomeLabel2.Font, 20);
procedure Image();
begin
with WizardForm do
begin
ClientWidth:=ScaleX(600);
ClientHeight:=ScaleY(420);
Center;
OuterNotebook.Hide;
InnerNotebook.Hide;
Bevel.Hide;
end;
end;
procedure IsPicture2;
begin
ExtractTemporaryFile('Fon.bmp');
Font.Handle := IsPicReFont(Font.Handle, Font.Height, FW_DEMIBOLD, False);
WelcomeLabel1.Font.Handle := IsPicReFont(WelcomeLabel1.Font.Handle, WelcomeLabel1.Font.Height, FW_BOLD, False);
PageNameLabel.Font.Handle := IsPicReFont(PageNameLabel.Font.Handle, PageNameLabel.Font.Height, FW_BOLD, False);
FinishedHeadingLabel.Font.Handle := IsPicReFont(FinishedHeadingLabel.Font.Handle, FinishedHeadingLabel.Font.Height, FW_BOLD, False);
Color := $000008;
IsPicInit(Handle);
IsPicAddImg(ExpandConstant('{tmp}\Fon.bmp'));
end;
end;
procedure InitializeWizard();
begin
Image();
IsPicture2;
end;[/SPOILER]