1 (изменено: Foma, 2014-01-04 21:21:12)

Тема: AHK: Только текст

Если выводить текст в gui и делать фон прозрачным, остаётся некрасивый контур близкий к цвету фона. Как это исправить?

2

Re: AHK: Только текст

Foma пишет:

Как это исправить?

Смотря как выводите, код покажите.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

3 (изменено: alexii, 2014-01-05 02:48:31)

Re: AHK: Только текст

cgui = 0x0000FF
fcolor = 0xFF00000
Gui,Color, %cgui%
Gui,font, s30 c%fcolor%, Arial
Gui,Add, Text, w250 h40, 56789
Gui, +Lastfound
WinSet, TransColor, 0000ff 250
Gui, -SysMenu -Caption
Gui,Show, x600 y500 w400 h300, gui
return

F1::
ExitApp

или

cgui = 0x0000FF
fcolor = 0xFF00000
Gui,Color, %cgui%
Gui,font, s30 c%fcolor%, Arial
Gui,Add, Text, w250 h40, 56789
Gui, +Lastfound
WinSet, TransColor, %cgui%
Gui, -SysMenu -Caption
Gui,Show, x600 y500 w400 h300, gui
return

F1::
ExitApp

4

Re: AHK: Только текст

Foma пишет:

остаётся некрасивый контур близкий к цвету фона. Как это исправить?

Брать близкие цвета фона и текста:

cgui := 0xFF0001
fcolor := 0xFF0000

Gui, -Caption +ToolWindow +LastFound
Gui, Color, % cgui
Gui, font, s30 c%fcolor%, Arial
Gui, Add, Text, w250 h40, 56789

WinSet, TransColor, %cgui% 200
Gui, Show
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

5

Re: AHK: Только текст

Всё равно некрасивый контур вокруг. Можете предложить другой выход?

6

Re: AHK: Только текст

Да, чтобы текст выводился более плавно, лучше пользоваться GDI+. Там библиотека только под 32-битный интерпретатор, но есть и под 64-битные.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

7

Re: AHK: Только текст

А нельзя внедрить в скрипт свой пиксельный шрифт, который не будет использовать сглаживание?

8

Re: AHK: Только текст

Можно:

FontFile := "D:\AHK\Scripts\_Разработка\MagicSchoolOne.ttf"  ; указать путь к файлу со шрифтом
FontName := "Magic School One"                               ; указать имя шрифта из файла

GuiColor := 0x0000FD
FontColor := 0x0000FF

if !DllCall("AddFontResourceEx", Str, FontFile, UInt, FR_PRIVATE := 0x10, Ptr, 0)
{
   MsgBox, % "Не удалось установить шрифт. Ошибка " . A_LastError
   return
}

SendMessage, WM_FONTCHANGE := 0x1D , 0, 0,, % "ahk_id" HWND_BROADCAST := 0xFFFF

Gui, -Caption +ToolWindow +LastFound
Gui, Color, % GuiColor
Gui, Font, s50 c%FontColor%, % FontName
Gui, Add, Text,, It's my font
WinSet, TransColor, % GuiColor
Gui, Show

Но всё равно для этой цели луше GDI+ использовать.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder