SASGIS - SAS.Планета
View Issue Details
0001173SAS.Планета[All Projects] Багpublic14-02-2012 11:3810-10-2012 11:48
Tolik 
zed 
lowminoralways
closedfixed 
.Nightly 
120808120808 
0001173: Плохо видно цифры на линейке
В версии 120214.5045 появилась новая линейка.
К сожалению, цифры на ней белые и совершенно не видны на светлой карте (то есть почти любой).
Надо сделать их контурными, как и линейка, если это возможно. Если нет - хотя бы с тенью.
Желательно цифры линейки и шкалы (Gauge) сделать одинаковыми.
ini, линейка
related to 0000969confirmed  Плохо видно шкалу 
related to 0001174closed vdemidov Странные числа на линейке 
? 0-9.bmp (11,008) 15-02-2012 05:32
https://bugtracker.sasgis.org/file_download.php?file_id=647&type=bug
bmp
Issue History
14-02-2012 11:38TolikNew Issue
14-02-2012 11:38TolikStatusnew => assigned
14-02-2012 11:38TolikAssigned To => zed
14-02-2012 11:38TolikRelationship addedrelated to 0000969
14-02-2012 11:39TolikSummaryИзменить шрифт линейки => Плохо видно линейку
14-02-2012 11:41TolikSummaryПлохо видно линейку => Плохо видно цифры на линейке
14-02-2012 16:44zedNote Added: 0005466
14-02-2012 17:51TolikNote Added: 0005467
14-02-2012 17:52TolikNote Added: 0005468
14-02-2012 19:10zedNote Added: 0005470
14-02-2012 21:20vdemidovNote Added: 0005473
15-02-2012 04:36TolikNote Added: 0005478
15-02-2012 05:32TolikFile Added: 0-9.bmp
15-02-2012 05:33TolikNote Edited: 0005478bug_revision_view_page.php?bugnote_id=5478#r2757
15-02-2012 08:05zedNote Added: 0005488
15-02-2012 16:52zedNote Added: 0005499
15-02-2012 17:09TolikNote Added: 0005501
15-02-2012 17:09vdemidovNote Added: 0005502
15-02-2012 17:19zedNote Added: 0005504
16-02-2012 04:19TolikNote Added: 0005512
16-02-2012 07:11zedNote Added: 0005519
17-02-2012 04:52TolikNote Added: 0005535
17-02-2012 15:44TolikStatusassigned => resolved
17-02-2012 15:44TolikFixed in Version => 120808
17-02-2012 15:44TolikResolutionopen => fixed
17-02-2012 15:45TolikRelationship addedrelated to 0001174
29-02-2012 10:59gpsMaxTag Attached: линейка
29-02-2012 11:00gpsMaxTag Attached: ini
10-10-2012 11:48TolikStatusresolved => closed

Notes
(0005466)
zed   
14-02-2012 16:44   
>Надо сделать их контурными
Может кто предложит способ реализации? А то есть у меня мысль, как это можно сделать, только боюсь как бы меня опять не опубликовали http://sasgis.org/forum/viewtopic.php?f=47&t=1866
(0005467)
Tolik   
14-02-2012 17:51   
Не надо бояться :)
Ну опубликуют, делов-то :)
Ещё можно прямо тут обсудить свою мысль.

Я точно где-то уже видел обсуждение этих теней и контуров, потому и написал "если это возможно". Не здесь?
(0005468)
Tolik   
14-02-2012 17:52   
Как вам такая идея?
http://www.fontcenter.com/categories/Hollow_and_Outlined/index.html
(0005470)
zed   
14-02-2012 19:10   
Использовать левый шрифт не получится, поскольку все они скорее всего содержат только латинские символы.

Моя мысль в том, чтобы рисовать текст на временную битмапку, затем сканировать её попиксельно и устанавливать чёрный цвет пикселям, соседствующим с белыми пикселями (или каким мы там цветом будем рисовать текст). И в конце концов, выводить эту битмапку, с оконтуренным текстом, на основную канву.
(0005473)
vdemidov   
14-02-2012 21:20   
Ну можно попробовать. Нужно 2 битмапки. На первой рендерим текст. Копируем на вторую с использованием морфологического расширения, который уже в GR32 реализован в классе TDilater. На первой меняем цвет и накладываем на вторую. Получаем красоту неописуемую.
Но вот сколько на это будет уходить времени это вопрос.
(0005478)
Tolik   
15-02-2012 04:36   
(edited on: 15-02-2012 05:33)
Латинские символы - не проблема. km можно и не переводить. А вот я подумал, что hollow font всё равно не решит проблему: внутри-то он не белый, а прозрачный! Двухцветных фонтов вроде не бывает?

Вот ещё идея, тупо, зато просто. Нарисовать графическим редактором нужные цифры и буквы, засунуть в один файл bmp и выводить нужные куски. Надо-то всего 10 цифр и с десяток букв (да и весь алфавит легко сделать), все в одном размере.

Вот, например, 0-9.bmp. Ширина цифр одинаковая, что упростит расчёты.

(0005488)
zed   
15-02-2012 08:05   
Реализовал свой вариант.
(0005499)
zed   
15-02-2012 16:52   
Я вот думаю, а может и для статусной строки тоже сделать оконтуривание текста по типу линейки?
(0005501)
Tolik   
15-02-2012 17:09   
Для статусной - не знаю, она и сейчас неплохо выглядит. И контурные, наверно, больше места занимают?
А для "шкалы", как я уже писал, надо сделать так же, как и для линейки.
Ну, сначала посмотрим, как выглядят новые цифры.
(0005502)
vdemidov   
15-02-2012 17:09   
Нужно статусную строку разбивать на несколько частей и кэшировать каждую из них. А потом можно и оконтуривание сделать.
(0005504)
zed   
15-02-2012 17:19   
>И контурные, наверно, больше места занимают?
+1 пиксель по контуру текста, т.е. на пару пикселей её придётся приподнять.
(0005512)
Tolik   
16-02-2012 04:19   
Новые цифры нравятся!
Контур, как я понял, серый, может сделать чуть темнее?

Сделаете такие же для Gauge? Некрасиво, когда на экране куча разных шрифтов.
А в строке статуса контурные делать не стоит, имхо длинный текст будет нечитабельным.
(0005519)
zed   
16-02-2012 07:11   
Вынесу настройки в ini, тогда можно будет подобрать оптимальный вариант.
(0005535)
Tolik   
17-02-2012 04:52   
Теперь всё хорошо.

Сделал
[ScaleLine]
OutLineColorHex=$AA000000

Контур получился темнее (по умолчанию $5A000000 - слишком светлый).

Мне кажется, лучше сделать по умолчанию АА.