Наверняка вы замечали, что в своей работе дизайнеры, маляры или жестянщики, используют наборы цветов из некоторых стандартных наборов (колеровочных систем) – RAL, PANTONE, NCS, Tikkurila.
![](https://habrastorage.org/webt/4b/p7/cb/4bp7cbm_havynjc2dlulpzus4ro.png)
В своем творчестве мастера используют ограниченный набор из нескольких выбранных цветов, которые гармонично сочетаются друг с другом. Иногда в работе над проектом таких наборов может быть несколько, и возникает потребность в ПО, которое могло бы сохранять рабочие варианты, а затем и итоговый результат в некоторую базу данных.
Таким образом, получаем следующие требования к ПО:
В качестве формата описывающего проект возьмем json следующей структуры
![](https://habrastorage.org/webt/hy/nm/ix/hynmixto63ewahoqfoh54eanaqg.png)
где name — код проекта, image — характерная картинка проекта сконвертированная в Base64String (сейчас можно сделать на множестве сайтов и просто скопировать в json) и массива цветов (Название+Код цвета). При необходимости новые параметры легко добавляются в json.
Полученный файл забрасываете в любое хранилище (или на сайт). Для примера закидываю в хранилище больших объектов Azure (контейнер)
![](https://habrastorage.org/webt/qi/bd/yy/qibdyymuxpusrcxuicfdzyq-yg8.png)
Делаем доступ к контейнеру анонимным и тогда по ссылке
Получаем в браузере следующий результат
![](https://habrastorage.org/webt/lc/u3/-j/lcu3-jmmp5hqckrs9wxnnqt8axw.png)
Устанавливаем демоверсию FastReport .Net
Набрасываем небольшой отчет
![](https://habrastorage.org/webt/be/tj/ri/betjricxfkqipjfamgkvlsesefu.png)
Главное в самом отчете раскодировать изображение для это добавляем вычисляемое поле Img
и задаем формулу
![](https://habrastorage.org/webt/g4/fb/ve/g4fbvetbwbhjbqfes_mwtz_gw50.png)
В скрипте для прорисовки цветов прописываем код
Запускаем отчет из дизайнера FastReport .Net (Desktop приложение)
![](https://habrastorage.org/webt/yb/e2/ef/ybe2efnxfnij2hlcqhl4pdznjvq.png)
![](https://habrastorage.org/webt/tg/w4/ad/tgw4adhhifhqvosgzutf_lhsgoc.png)
Скачать отчет можно по ссылке. Перед запуском отчета проверьте источник данных (Возможно что установленный адрес json будет уже не рабочим), переместите json на свой ресурс и запустите отчет.
Дизайнер позволяет конвертировать полученный отчет в pdf и множество других форматов, так что есть что продемонстрировать клиенту, что точно дойдет и в нужном формате (например pdf по почте). Можно завести несколько файлов на проект, а также вести полную базу в отдельном файле. На мой взгляд достаточно удобно и без заморочек. Возможно сделать веб приложение которое будет автоматизировать более сложные процессы.
![](https://habrastorage.org/webt/4b/p7/cb/4bp7cbm_havynjc2dlulpzus4ro.png)
В своем творчестве мастера используют ограниченный набор из нескольких выбранных цветов, которые гармонично сочетаются друг с другом. Иногда в работе над проектом таких наборов может быть несколько, и возникает потребность в ПО, которое могло бы сохранять рабочие варианты, а затем и итоговый результат в некоторую базу данных.
Таким образом, получаем следующие требования к ПО:
- БД и репортинговая система отражающая итоговую и промежуточные моменты проекта
- Возможность быстро пополнять картотеку
- Возможность послать несколько вариантов заказчику на рассмотрение
- Хранилище портфолио....
В качестве формата описывающего проект возьмем json следующей структуры
![](https://habrastorage.org/webt/hy/nm/ix/hynmixto63ewahoqfoh54eanaqg.png)
где name — код проекта, image — характерная картинка проекта сконвертированная в Base64String (сейчас можно сделать на множестве сайтов и просто скопировать в json) и массива цветов (Название+Код цвета). При необходимости новые параметры легко добавляются в json.
Полученный файл забрасываете в любое хранилище (или на сайт). Для примера закидываю в хранилище больших объектов Azure (контейнер)
![](https://habrastorage.org/webt/qi/bd/yy/qibdyymuxpusrcxuicfdzyq-yg8.png)
Делаем доступ к контейнеру анонимным и тогда по ссылке
https://***.blob.core.windows.net/colors/bd.json
Получаем в браузере следующий результат
![](https://habrastorage.org/webt/lc/u3/-j/lcu3-jmmp5hqckrs9wxnnqt8axw.png)
Устанавливаем демоверсию FastReport .Net
Набрасываем небольшой отчет
![](https://habrastorage.org/webt/be/tj/ri/betjricxfkqipjfamgkvlsesefu.png)
Главное в самом отчете раскодировать изображение для это добавляем вычисляемое поле Img
и задаем формулу
![](https://habrastorage.org/webt/g4/fb/ve/g4fbvetbwbhjbqfes_mwtz_gw50.png)
В скрипте для прорисовки цветов прописываем код
private void Data2_BeforePrint(object sender, EventArgs e)
{
System.Drawing.Color col = System.Drawing.ColorTranslator.FromHtml((String)Report.GetColumnValue("JSON.item.set.item.color"));
Shape1.Fill = new SolidFill(col);
Shape1.Border.Color = col;
}
Запускаем отчет из дизайнера FastReport .Net (Desktop приложение)
![](https://habrastorage.org/webt/yb/e2/ef/ybe2efnxfnij2hlcqhl4pdznjvq.png)
![](https://habrastorage.org/webt/tg/w4/ad/tgw4adhhifhqvosgzutf_lhsgoc.png)
Скачать отчет можно по ссылке. Перед запуском отчета проверьте источник данных (Возможно что установленный адрес json будет уже не рабочим), переместите json на свой ресурс и запустите отчет.
Дизайнер позволяет конвертировать полученный отчет в pdf и множество других форматов, так что есть что продемонстрировать клиенту, что точно дойдет и в нужном формате (например pdf по почте). Можно завести несколько файлов на проект, а также вести полную базу в отдельном файле. На мой взгляд достаточно удобно и без заморочек. Возможно сделать веб приложение которое будет автоматизировать более сложные процессы.