Обработка по настройке образцов текста

Обработка, позволяющая осуществить выбор цвета текста (фона), настроить параметры шрифта текста. Имеется возможность работать с произвольными цветами либо из состава веб-цветов, определять различные наборы. Можно также создать набор избранных образцов текста (одновременно поддерживается набор избранных цветов).

Есть большое количество уже разработанных диалогов для выбора-настройки цвета и шрифта. Изначально это была простенькая цветовая панель с произвольными цветами.

Потом была включена возможность работы с веб-цветами и выбор шрифтов.

И, конечно же, не обошлось без различных настроек цветовой панели, как то Тон-Насыщенность-Яркость (HSB). Некоторые из этих настроек можно оформить как наборы цветов и быстро переключаться между ними.

Удачные образцы текста можно включить в список избранных образцов и использовать в дальнейшей работе. Выбор образца осуществляется нажатием левой кнопки мыши (ЛКМ). В списке есть возможность настроить различные группировки образцов. Настройка выполняется после нажатия правой кнопки мыши (ПКМ) в списке бразцов.

Основные области панели представлены картинкой ниже:

Работа с панелью нехитрая. Щелчком ЛКМ по тональному кольцу выбираете цветовой тон. В основной области окна получаете подборку цветов. Выбор цвета текста и/или фона выполняются соответственно ЛКМ и ПКМ. Таким же образом можно выполнить настройку образца, воспользовавшись избранными цветами. К слову, избранные цвета формируются в результате 2 событий: либо когда вы включаете образец в список избранных, либо когда осуществляете выбор готового образца из списка.

Область образца тоже кликабельна. Нажатия ЛКМ и ПКМ приводят к поиску соответственно цветов текста и фона в основной области цветовой панели. Найденные цвета будут обведены контрастной рамкой, как это видно на картинке ниже. На этой же картинке демонстрируется возможность вывода текста в основную область цветов. По идее, это облегчит отбор удачных образцов.

Из недостатков вынужден отметить некоторую тормознутость при работе с веб-цветами. Проявляется не всегда, только при смене настроек набора цветов, характеризующихся параметрами HSB. Если же пользоваться только основным набором цветов (или каким-то одним другим), — задержек не будет. Оно и понятно: при выборе близких веб-цветов во время заполнения основной области панели, выполняется оценка декартова расстояния между цветами в количестве 224(веб-цветов) х 64 (ячеек цветов) = 14336. Но такой расчет для выбранных параметров HSB выполняется один раз и в дальнейшем  тормоза при выборе тона становятся незаметны.

Впрочем, для практических целей, манипуляции параметрами HSB могут и не потребоваться. На последней картинке представлен основной набор цветов, HSB = 0. Счетчик внизу 33/193/224 это: 33 цвета в видимом наборе цветов; всего же по всем наборам (всем тонам) представлены 193 из 224 веб-цветов. Манипулирование параметрами HSB позволит разве что вывести в некоторых наборах цветов недостающие 224-193=31 цвета.

Прилагаю в архивном файле выгруженную информационную базу, в которой выполнялось тестирование (ничего лишнего в ней нет). Работы выполнены под Win7 в 1С v8.3.7 на управляемых формах с включенным режимом совместимости 1С v8.3.5. Отключение режима совместимости приводит к некоторому искажению формы, образец смещается вниз, становится невидим в моем случае. Но не считаю это большой проблемой при попытке задействовать эту обработку в других версиях 1С, потребуются незначительные правки размеров элементов формы.

Как это ни дико может показаться, но я все еще использую модальные вызовы.  В моем случае это допустимо.

И как бы то ни было, предлагаю эту обработку товарищам заинтересовавшимся как она есть — со всеми своими сомнительными достоинствами и явными недостатками. И спасибо за внимание всем, кому хватило терпения дочитать это до конца.

2 Comments

  1. Djelf

    Извини, но вырвиглазно и бесполезно…

    Качественно подбирать цвета вручную может только художник/фотограф и т.п.

    Ну или не художник, но из фиксированной и ограниченной палитры, не увлекаясь количеством вариантов, а у тебя слишком много свободы выбора.

    Посмотри сервис http://colorscheme.ru/ и аналогичные — их довольно много найти можно.

    Что-то похожее но в 1с было бы действительно интересно.

    Reply
  2. romasna

    (1)Это не совсем так. Возможно, начало было положено именно такое, но потом я развил обработку возможностью работать с веб-цветами, коих здесь ровно 224. При всех ухищрениях ты не извлечешь больше 224 веб-цветов. Да, можно путем настроек получить только светлые тона, или только темные, но это все те же веб-цвета, которые при этом ты ограничиваешь в количестве (своего рода фильтрация цветов). Основной набор веб-цветов (при HSB = 0) — это 193 цвета, как я приводил в описании. Так что, нет здесь «много свободы».

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *