AIMP Forum
AIMP for Windows => Skin Editor, Skin Engine => Вопросы / Questions => Topic started by: Kibermanick on March 11, 2019, 19:20:49
-
Это баг, или я что-то забыл сделать?
(https://www.aimp.ru/forum/index.php?action=dlattach;topic=62142.0;attach=56876)
-
Ну дак что, с этим можно что-нибудь сделать?
-
Я по картинке вообще ничего не понял. Что имеется ввиду-то хоть?
-
Я по картинке вообще ничего не понял. Что имеется ввиду-то хоть?
Тексту "Вся музыка" не сидится на месте, он отображается как надо только на 100% и 150% масштабе, на остальных он съехал вниз, даже на 200%, что висма странно.
-
Нужны исходные данные: что за шрифт и какой у него размер по умолчанию.
-
Нужны исходные данные: что за шрифт и какой у него размер по умолчанию.
Это TASETextDisplayEx, шрифт Segoe UI без стилей 16-го размера и с ClearType сглаживанием.
-
Шрифт - штука капризная, вот у вашего Segoe UI поддерживаются вот такие размеры: 16 18 20 22 24 26 28 36 48.
16 при 125% - 20
16 при 150% - 24
16 при 200% - 32, но такого нет и винда берет ближайший, скорее всего это будет 36.
А позиционируете вы текст по центру кнопки вручную? Или с помощью свойства "центрировать по вертикали"? Лучше использовать последнее.
P.S. Если вгрызаться в детали - шрифт скейлится более хитро: скейлится не его размер, а высота (https://support.microsoft.com/en-us/help/74299/info-calculating-the-logical-height-and-point-size-of-a-font), соответственно, даже при 125% целевой размер может получаться не 20, а 21, например.
-
Шрифт - штука капризная, вот у вашего Segoe UI поддерживаются вот такие размеры: 16 18 20 22 24 26 28 36 48.
16 при 125% - 20
16 при 150% - 24
16 при 200% - 32, но такого нет и винда берет ближайший, скорее всего это будет 36.
А позиционируете вы текст по центру кнопки вручную? Или с помощью свойства "центрировать по вертикали"? Лучше использовать последнее.
P.S. Если вгрызаться в детали - шрифт скейлится более хитро: скейлится не его размер, а высота (https://support.microsoft.com/en-us/help/74299/info-calculating-the-logical-height-and-point-size-of-a-font), соответственно, даже при 125% целевой размер может получаться не 20, а 21, например.
Висма печально и странно, как же тогда собственное масштабирование винды, это же ее стандартный шрифт по умолчанию. А как вы проверяли какие размеры поддерживает данный шрифт? Да и вообще странно, шрифт же векторный, масштабируй как хочешь. В том же фотошопе можно любой размер прописать, даже дробный. Блин ну это же такой косяк, у меня же все отступы рассчитаны, и до текста, и после.
-
P.S. Если вгрызаться в детали - шрифт скейлится более хитро: скейлится не его размер, а высота (https://support.microsoft.com/en-us/help/74299/info-calculating-the-logical-height-and-point-size-of-a-font), соответственно, даже при 125% целевой размер может получаться не 20, а 21, например.
я понял.
Может можно как-то сделать наоборот, что бы размер высчитывался не по высоте букв а по их длине? Высота не так важна как длина.
-
Висма печально и странно, как же тогда собственное масштабирование винды, это же ее стандартный шрифт по умолчанию.
Во-первых, 16пт для 100% винда вряд ли где-то использует.
Во-вторых, +1/2 для столь большого шрифта - не так страшно.
В-третьих, современные интерфейсы строятся максимально адаптивными - без расстановки элементов вручную попиксельно.
А как вы проверяли какие размеры поддерживает данный шрифт? Да и вообще странно, шрифт же векторный, масштабируй как хочешь.
Векторный? Не уверен я в этом.
В том же фотошопе можно любой размер прописать, даже дробный.
У фотошопа свой движок рендеринга текста, у меня же - то, что дает API винды.
Блин ну это же такой косяк, у меня же все отступы рассчитаны, и до текста, и после.
Ну а кто запрещает расчет отступов отдать на откуп движку? Пусть он сам центрирует текст.
Может можно как-то сделать наоборот, что бы размер высчитывался не по высоте букв а по их длине? Высота не так важна как длина.
Ну будет погрешность в другую сторону. Покуда дробных значений нет - это бесполезно.
-
Ну а кто запрещает расчет отступов отдать на откуп движку? Пусть он сам центрирует текст.
А вот он не центрирует. У TASETextDisplayEx нет центрирования по вертикали когда включено растяжение по горизонтали, а по вертикали выключено.
-
А вот он не центрирует. У TASETextDisplayEx нет центрирования по вертикали когда включено растяжение по горизонтали, а по вертикали выключено.
А обычный TASETextDisplay не подходит?
-
А обычный TASETextDisplay не подходит?
Нет, он же должен растягивать эту кнопку по длине в зависимости от размера текста. Хотя я придумал один костыль с участием обычного текста.
-
Ох. Вместо того, чтобы записать предложение по AutoSize для кнопки и обычной текстовой метки - костыли...
Короче говоря, я задачу понял. Введу AutoSize.
-
Ох. Вместо того, чтобы записать предложение по AutoSize для кнопки и обычной текстовой метки - костыли...
Короче говоря, я задачу понял. Введу AutoSize.
Ну, я просто разобраться хотел но, так даже лучше.) Спасибо.