|
Text
|
|||
---|---|---|---|
#18+
Доброго времени суток. Есть проблема - на форме есть TextBlock, к нему применяется TextDecoration (пунктирная линия подчеркивания), проблема в том, что начало линии выходит за границы текста на 2 пикселя, в конце текста заканчивается нормально. Как сделать, что бы линия не выходила за пределы текста по горизонтали? Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 08:26 |
|
Text
|
|||
---|---|---|---|
#18+
AderAder, Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
лично у меня всё нормально отображается. Возможно это особенности шрифта, отсутствие кернинга, вот буква и выступает вперёд, так как по бокам у неё отступы. По моему автор "упоротый перфекционист" :) Проверьте границы элемента (как у меня отобразите его с фоном на другом фоне. Будет чётко видно, где начинается и где заканчивается граница. Так же стоит проверить пробелы в Text, которые могут быть вначале строки. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 10:41 |
|
Text
|
|||
---|---|---|---|
#18+
Roman Mejtes, Мне лично пофиг на вот эту линию, но заказчик расстраивается и просит что бы небыло. Пробелы тыщу раз проверял( А шрифт используется Microsoft Sans Serif размерностью 12. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 12:22 |
|
Text
|
|||
---|---|---|---|
#18+
Roman Mejtes, а вот если нарисовать фон у TextBlock - он получается сдвинутым влево на 1 пиксель ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 12:35 |
|
Text
|
|||
---|---|---|---|
#18+
AderAderRoman Mejtes, а вот если нарисовать фон у TextBlock - он получается сдвинутым влево на 1 пиксель через WPF шпион посмотрите свойство Padding у этого TextBlock, возможно какой то общий стиль применяется к TextBlock'У или через Binding просто выведите куда то значение свойства. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 12:45 |
|
Text
|
|||
---|---|---|---|
#18+
Roman Mejtes, паддинг 0, посторонних стилей нет, это я в первую очередь посмотрел(( ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 14:54 |
|
Text
|
|||
---|---|---|---|
#18+
AderAderRoman Mejtes, а вот если нарисовать фон у TextBlock - он получается сдвинутым влево на 1 пиксель Вали всё на баги отрисовки. Так заказчику и объясни. Или поменяй шрифт на похожий. У WPF достаточно багов отрисовки - тебе что, править их все? Например, Windows 7, отключи Aero, отключи сглаживание шрифтов (хотя, возможно, и при нём работает) в винде и в WPF (свойство контрола TextOptions.TextFormattingMode="Display"), оставь дефолтный шрифт и его размер. Кидай на окно кнопку с любой надписью. Затем жмакай на кнопку и наблюдай, как надпись на ней мгновенно становится размытой и за секунду вновь становится чёткой. Подобное же наблюдал и при движении в списках. Подобное же наблюдал во флеше. Кто знает, может, алгоритм выравнивания по пиксельной сетке какой-то итерационный и отрабатывает несколько кадров, прежде, чем он выравняет как надо. А может, ещё что-то. Можно копаться и тратить время. А можно забить. Вот , например. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 20:24 |
|
Text
|
|||
---|---|---|---|
#18+
petalvikAlexey2112, есть хорошая статья " Откуда "мыло" в WPF и как с ним бороться " по этой теме. У меня по ссылке немного другое. Это не статичная картинка, а динамика. Т. е. когда сдвигаешь что-то (двигаешь список, жмёшь на кнопку, ещё что-то, где есть текст), что с настройками чёткости сделано, то оно потом сразу становится замыленным, а потом относительно долго (за несколько десятков кадров) становится опять чётким. Вообще, всё это "мыло" и "привязка к пикселям" лечится просто увеличенными раза так в два плотностью пикселей и, соответственно, размером элементов. "Ретина" и всё такое. Эппл, вон, не смогла придумать нормальный алгоритм делания шрифтов чёткими и просто увеличила плотность пикселов и продолжила "сглаживать" свои шрифты. А совсем уж вообще, мне вот эти тонкие настройки "чтобы было круто" не сдались никак. Если нет одной настройки "сделать круто", то лазить там чего-то ради выравнивания одного пикселя - работка для идиотов. Проще заказчика убедить, что "так и надо" и "ничего поделать нельзя". Навряд ли он отменит заказ и найдёт тех, кто будет ему пиксели высчитывать, зато от тупого головняка вы избавитесь. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.05.2015, 06:26 |
|
|
start [/forum/topic.php?fid=21&fpage=16&tid=1440863]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
45ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 145ms |
0 / 0 |