SASGIS - SAS.Планета
View Issue Details
0000007SAS.Планета[All Projects] Хотелкаpublic06-08-2010 10:4810-10-2012 11:48
Tikh 
vdemidov 
normaltweakalways
closedfixed 
WindowsWindows XPWindows XP SP3
100707 
120808120808 
0000007: Отображать подложку названий меток сплошным фоном
При создании метки, у её текстовой подписи тень смещена вправо-вниз всегда, регулировать или отключить смещение нельзя.
Из-за этого при печати изображений из САС.Планеты, какие цвета ни подбирать, всё равно различимость текста на цветном фоне будет очень низка.

См. как это сделано в Google Maps - тень (точнее в данном случае назвать это свечением, как в фотошопе) не смещена, она обрамляет буквы.

Различимость и чёткость при печати таким образом - гораздо выше.

Прошу реализовать тень текстовых подписей меток в САС таким же образом.
интерфейс, метки, оформление меток
has duplicate 0000673closed gpsMax Фоновая подложка для отображения меток 
jpg SAS VS GOOGLE.jpg (7,609) 06-08-2010 10:48
http://www.sasgis.org/mantis/file_download.php?file_id=2&type=bug
jpg

jpg Courier Test.jpg (18,745) 11-08-2010 05:34
http://www.sasgis.org/mantis/file_download.php?file_id=6&type=bug
jpg

jpg Primer.jpg (67,619) 14-10-2010 04:40
http://www.sasgis.org/mantis/file_download.php?file_id=34&type=bug
jpg

jpg Primer1.jpg (67,716) 14-10-2010 04:52
http://www.sasgis.org/mantis/file_download.php?file_id=35&type=bug
jpg

png Options.png (21,855) 14-10-2010 05:12
http://www.sasgis.org/mantis/file_download.php?file_id=36&type=bug
png
Issue History
06-08-2010 10:48TikhNew Issue
06-08-2010 10:48TikhFile Added: SAS VS GOOGLE.jpg
06-08-2010 13:43vdemidovNote Added: 0000002
06-08-2010 14:23feyaNote Added: 0000003
06-08-2010 14:23feyaNote Edited: 0000003bug_revision_view_page.php?bugnote_id=3#r4
07-08-2010 07:14vdemidovStatusnew => acknowledged
09-08-2010 04:04TikhNote Added: 0000010
09-08-2010 06:25vdemidovNote Added: 0000012
09-08-2010 07:08TikhNote Added: 0000014
09-08-2010 07:23vdemidovNote Added: 0000015
09-08-2010 07:37vdemidovTarget Version => 26xxxx
09-08-2010 08:31ChicatiloNote Added: 0000016
09-08-2010 09:33TikhNote Added: 0000018
09-08-2010 10:50LedmycNote Added: 0000021
09-08-2010 10:55vdemidovNote Edited: 0000002bug_revision_view_page.php?bugnote_id=2#r8
11-08-2010 05:34TikhFile Added: Courier Test.jpg
11-08-2010 05:36TikhNote Added: 0000046
11-08-2010 05:37TikhNote Edited: 0000046bug_revision_view_page.php?bugnote_id=46#r10
05-10-2010 15:37gpsMaxNote Added: 0000258
14-10-2010 04:40TikhFile Added: Primer.jpg
14-10-2010 04:49TikhNote Added: 0000337
14-10-2010 04:52TikhFile Added: Primer1.jpg
14-10-2010 04:53TikhNote Added: 0000338
14-10-2010 05:11TikhNote Added: 0000339
14-10-2010 05:12TikhFile Added: Options.png
14-10-2010 06:36vdemidovTarget Version26xxxx => 29xxxx
14-10-2010 13:10LedmycNote Added: 0000350
14-10-2010 13:21LedmycNote Edited: 0000350bug_revision_view_page.php?bugnote_id=350#r116
18-10-2010 05:31TikhNote Added: 0000365
11-12-2010 10:48RussellMurNote Added: 0000771
13-12-2010 05:09TikhNote Added: 0000778
09-04-2011 11:13gpsMaxTag Attached: интерфейс
09-04-2011 11:13gpsMaxTag Attached: метки
11-04-2011 07:11vdemidovStatusacknowledged => confirmed
24-04-2011 22:17gpsMaxRelationship addedrelated to 0000673
26-04-2011 14:16gpsMaxRelationship replacedhas duplicate 0000673
30-05-2011 09:55gpsMaxTag Attached: оформление меток
04-09-2011 15:34zOnNote Added: 0003682
04-09-2011 15:55zOnNote Edited: 0003682bug_revision_view_page.php?rev_id=1861
06-09-2011 10:59vdemidovNote Deleted: 0003682
12-11-2011 16:24rsuanNote Added: 0004366
12-11-2011 20:04vdemidovNote Deleted: 0004366
27-02-2012 19:54vdemidovTarget Version29xxxx => 120808
27-02-2012 19:54vdemidovSummaryСмещение тени текстовых подписей у меток => Отображать подложку названий меток сплошным фоном
27-02-2012 19:55vdemidovStatusconfirmed => resolved
27-02-2012 19:55vdemidovFixed in Version => 120808
27-02-2012 19:55vdemidovResolutionopen => fixed
27-02-2012 19:55vdemidovAssigned To => vdemidov
27-02-2012 20:09vdemidovNote Added: 0005684
28-02-2012 05:08TolikNote Added: 0005690
28-02-2012 06:14vdemidovNote Added: 0005692
10-10-2012 11:48TolikStatusresolved => closed

Notes
(0000002)
vdemidov   
06-08-2010 13:43   
(edited on: 09-08-2010 10:55)
Мы бы с удовольствием сделали как Гугл, но объясните как это сделать? Сейчас текст просто выводится 2 раза разными цветами с маленьким смещением. А как сделать обрамление букв?

(0000003)
feya   
06-08-2010 14:23   
как вариант выводить тень для каждого из четырех углов, но это будет проблематично в плане скорости отображения, потому не подойдет.

(0000010)
Tikh   
09-08-2010 04:04   
А если шрифт тени сделать без смещения, но большим по размеру? Такое может подойти?

Как вариант - сделать галочку в настройках метки, чтобы можно было сделать как в Ворде "выделение цветом" всей строки с названием метки. Т.е. метка получается внутри цветного прямоугольника.
(0000012)
vdemidov   
09-08-2010 06:25   
>>А если шрифт тени сделать без смещения, но большим по размеру? Такое может подойти?
Тогда буквы расползутся. Придется выводить всю надпись побуквенно, самому задавая межсимвольный интервал.

>>Т.е. метка получается внутри цветного прямоугольника.
А вот насчет этого можно подумать. Но вряд ли в ближайшее время.
(0000014)
Tikh   
09-08-2010 07:08   
Я имел в виду - может быть можно не рисовать этот прямоугольник графически, а задать свойством текста "цвет фона". Такое есть?
(0000015)
vdemidov   
09-08-2010 07:23   
>>Я имел в виду - может быть можно не рисовать этот прямоугольник графически, а задать свойством текста "цвет фона". Такое есть?
Такого нет. В любом случае в ближайшие пару месяцев в этом отношении ничего не поменяется.
(0000016)
Chicatilo   
09-08-2010 08:31   
>Сейчас текст просто выводится 2 раза разными шрифтами с маленьким смещением.
А зачем разными шрифтами то?

А если попробовать выводить тень жирным? Или тоже буквы будут расползаться?
(0000018)
Tikh   
09-08-2010 09:33   
Будут.
(0000021)
Ledmyc   
09-08-2010 10:50   
А может использовать какой-нибудь моноширинный шрифт, вроде Courier New или Lucida Console? И тень полужирным.
(0000046)
Tikh   
11-08-2010 05:36   
(edited on: 11-08-2010 05:37)
См. выше - я приложил тестовую картинку с использованием шрифта Courier New.

Делается проще простого - двумя шрифтами один поверх другого, верхний обычный, нижний полужирный.

Мне кажется - вполне нормально, достойно реализации в программе!

А впоследствии можно подобрать другой моноширинный шрифт ещё более подходящий по рисунку и прикладывать его к программе.

(0000258)
gpsMax   
05-10-2010 15:37   
> Мне кажется - вполне нормально
А мне кажется, выглядит даже несколько хуже, чем уже используемый для тени метод - там тоже нет обрамления букв со всех сторон, но хотя бы тень предсказуемо с одной стороны.
(0000337)
Tikh   
14-10-2010 04:49   
Хочу предложить решение проблемы.

См. третий, нижний приложенный файл.

Этот метод прост для реализации в программе. Оба слоя - и текст и подложка выводятся как и сейчас, простым текстом!

Нижний слой, белый на рисунке-примере, выводится символом U+2588: Full block, он есть в наборе шрифта Arial. Найден мной через "таблицу символов".
Этот символ вставляется на нижний слой-подложку столько раз, сколько символов в верхнем слое.
(0000338)
Tikh   
14-10-2010 04:53   
Добавил ещё одну картинку - на ней выравнивание по центру. На третьей - выранивание по левому краю.
(0000339)
Tikh   
14-10-2010 05:11   
В программе предлагаю сделать галку в опциях "Отображать подложку меток сплошным фоном".

Алгоритм я себе с точки зрения чайника представляю так:
Если галка стоит, то смещение нижнего слоя текста делать равным нулю, символы нижнего слоя при выводе на экран заменять на U+2588: Full block.
Если галка не стоит, то всё остаётся как сейчас.
(0000350)
Ledmyc   
14-10-2010 13:10   
(edited on: 14-10-2010 13:21)
>Этот символ (█) вставляется на нижний слой-подложку столько раз, сколько символов в верхнем слое.
Проблема в том, что в большинстве шрифтов этот символ уже таких букв, как Ж и Щ, а в Arial он даже уже, чем, например, М и С.

Единственный шрифт, который есть на большинстве компьютеров, относительно привлекателен, являясь при этом моноширинным, — это Lucida Console.

(0000365)
Tikh   
18-10-2010 05:31   
В таком случае, можно реализовать отображение меток этим шрифтом при переключении в режим сплошной подложки меток.
(0000771)
RussellMur   
11-12-2010 10:48   
> как вариант выводить тень для каждого из четырех углов, но это будет проблематично в плане скорости отображения, потому не подойдет.
Что если текст рисовать, а не выводить шрифтом?
(0000778)
Tikh   
13-12-2010 05:09   
>Что если текст рисовать, а не выводить шрифтом?

Наверное, это сложнее в плане объёма необходимых изменений кода...
А хочется получить данную хотелку по возможности скорее. Замена подложки на символы сплошной заливки потребует не таких уж больших изменений в программе, и то, хотелка назначена на релиз июня следующего года. А вот реализация нового способа вывода надписей - отодвинет ещё неизвестно насколько...
(0005684)
vdemidov   
27-02-2012 20:09   
Добавил возможность отображать подписи меток со сплошным фоном. Параметр UseSolidCaptionBackground в ini
(0005690)
Tolik   
28-02-2012 05:08   
Проверил, работает (120228.5112).
Но выглядит некрасиво. И как поменять цвет фона?

А давайте сделаем подписи как на новой линейке?
(0005692)
vdemidov   
28-02-2012 06:14   
Цвет фона менять в параметрах каждой конкретной метки.
Подписи как на новой линейке будут рисоваться очень медленно. Пока это два числа это нормально, а когда это сотни гораздо более длинных подписей - это тормоза будут. Хотя попробовать можно.