Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 22, средняя оценка - 4.95
Rius
Эксперт .NET
4548 / 2862 / 702
Регистрация: 25.05.2015
Сообщений: 8,832
Записей в блоге: 10
Завершенные тесты: 4
#1

Графический редактор ЖК дисплеев (от Rius) - Микроконтроллер

20.06.2015, 00:04. Просмотров 6631. Ответов 18

LCD Image Converter.

Назначение - создание изображений и шрифтов в формате исходников "C" (и не только) для встраиваемых приложений.
Промежуточные данные хранятся в формате XML, так что однажды созданный шрифт можно впоследствии доработать.
Преобразование в формат исходников осуществляется с помощью настраиваемых пользователем шаблонов, что позволяет, в некоторых пределах, получить нужный формат данных, под желаемый тип контроллера дисплея и распределение памяти.

Программа кроссплатформенна (Qt), бесплатна, opensource. На домашней страничке имеются документация и примеры (исходных данных, результатов, исходных кодов для МК).
  • Создание отдельного изображения;
  • Создание шрифтов (набор изображений - символов):
    • Включая кодировку юникода.
  • Создание структур данных для дисплеев:
    • Монохромных, градаций серого и цветных;
    • С вертикальной и горизонтальной ориентацией байт;
    • 8, 16, 24, 32 бит данных;
    • 1...32 бит на пиксел;
    • Сжатие RLE;
    • С различными контроллерами дисплеев, не ограничиваясь одной конкретной моделью.

http://www.cyberforum.ru/microcontrollers/thread1482280.html
11
Миниатюры
Графический редактор ЖК дисплеев (от Rius)   Графический редактор ЖК дисплеев (от Rius)   Графический редактор ЖК дисплеев (от Rius)  

Графический редактор ЖК дисплеев (от Rius)  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.06.2015, 00:04
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Графический редактор ЖК дисплеев (от Rius) (Микроконтроллер):

Преобразователь текста в коды ЖКИ-дисплеев с контроллером HD44780
на скорую руку написал на php простейший преобразователь. вводите строку,...

Графический редактор двумерных таблиц
Нужен редактор таблиц двумерных и одномерных впринципе тоже. Функции нужны...

Описание дисплеев
При покупке плеера столкнулся с такими понятиями: Dual color OLED и (White)...

ДЕКОРАТИВНЫЕ РАМКИ ДЛЯ ДИСПЛЕЕВ
Постоянная проблема в аккуратном оформлении лицевой панели. Особенно если еще...

Картинка для обнаружения мерцания ЖК дисплеев.
Создал картинку которая показывает развертку ЖК монитора (мерцание), на ней...

18
Витальич
20.06.2015, 00:19
  #2

Не по теме:

Эко как Вас задело

0
Rius
20.06.2015, 00:21  [ТС]
  #3

Не по теме:

Витальич, лучше тему прикрепите

0
Rius
Эксперт .NET
4548 / 2862 / 702
Регистрация: 25.05.2015
Сообщений: 8,832
Записей в блоге: 10
Завершенные тесты: 4
20.06.2015, 10:28  [ТС] #4
2015-06-20

Графический редактор ЖК дисплеев (от Rius)

Редактор изображений.
Простейшие операции:
  • установка точки указанного цвета;
  • поворот;
  • инверсия;
  • изменение размеров;
  • импорт/экспорт в файлы популярных форматов.

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

Графический редактор ЖК дисплеев (от Rius)

Редактор шрифтов.
  • Поддерживает импорт из операционной системы, с указанием семейства, стиля, размера;
  • Выбор нужных символов, а не только целого диапазона;
  • Выбор кодировки (в том числе Юникод);
  • Моноширинность или пропорциональность;
  • Сглаживание (средствами прорисовки символов из операционной системы, применимо не ко всем шрифтам);
  • Сведение символов в одно изображение, если требуется такой формат хранения шрифта;

Графический редактор ЖК дисплеев (от Rius)

Настройки.
Самое сложное. В них же, точнее в нижележащем алгоритме преобразования, коренное отличие от всех остальных программ данного назначения.
Так как в проектах можно использоваться несколько различных индикаторов, настройки сгруппированы в предустановки, легко переключаемые через выпадающий список.
Диалог настройки предустановок разбит на 6 частей:
  • Подготовка;
  • Матрица;
  • Перестановка;
  • Изображение;
  • Шрифт;
  • Шаблоны;

Подготовка.
Определяется цветность изображения, инвертирование, последовательность обхода точек (возможно изменение пользователем).
Простая анимация наглядно показывает эту последовательность.

Графический редактор ЖК дисплеев (от Rius)

Матрица.
Список условий для выбора битов данных из точек изображения, их порядка упаковки.
В отличие от остальных программ, здесь пользователь может сам настроить желаемый порядок точек, а не просто выбрать радиокнопками один из предусмотренных (лишь) вариантов.

Графический редактор ЖК дисплеев (от Rius)

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

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

Графический редактор ЖК дисплеев (от Rius)

Шрифт.
Позволяет включить байт индкации порядка байт (BOM) для юникода, выбрать кодировку и порядок сортировки символов в итоговом файле шрифта.

Шаблоны.
Здесь выбираются файлы шаблонов. Отдельно для шрифтов и изображений. В программу встроены 2 шаблона по умолчанию, в качесте примера. Они прописаны по умолчанию, но могут быть изменены.

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

Графический редактор ЖК дисплеев (от Rius)

Файлы шаблона.
Второе основное отличие от аналогичных программ.
Представляет собой текстовый файл со специальными тегами $(имя_тега), взамен которых программа размещает информацию об изображении/шрифте.
Пользователь может изменить этот файл под свои нужды и получить другой формат вывода, в том числе и для другого языка программирования, отличного от "C".

Пример шаблона для изображения:
Кликните здесь для просмотра всего текста
Код
$(start_block_header)
/*******************************************************************************
* $(doc_data_type)
* filename: $(doc_filename)
* name: $(doc_name)
*
* preset name: $(out_preset_name)
* data block size: $(img_data_block_size) bit(s), uint$(img_data_block_size)_t
* RLE compression enabled: $(img_rle)
* conversion type: $(pre_conv_type), $(pre_mono_type) $(pre_mono_edge)
* bits per pixel: $(out_bpp)
*
* preprocess:
*  main scan direction: $(pre_scan_main)
*  line scan direction: $(pre_scan_sub)
*  inverse: $(pre_inverse)
*******************************************************************************/

/*
 typedef struct {
     const uint$(img_data_block_size)_t *data;
     uint16_t width;
     uint16_t height;
     uint8_t dataSize;
     } tImage;
*/
#include <stdint.h>
$(end_block_header)

$(start_block_images_table)
static const uint$(img_data_block_size)_t image_data_$(doc_name_ws)[$(out_blocks_count)] = {
    $(out_image_data)
};
const tImage $(doc_name_ws) = { image_data_$(doc_name_ws), $(out_image_width), $(out_image_height),
    $(img_data_block_size) };
$(end_block_images_table)


Пример шаблона для шрифта:
Кликните здесь для просмотра всего текста
Код
$(start_block_header)
/*******************************************************************************
* $(doc_data_type)
* filename: $(doc_filename)
* name: $(doc_name)
* family: $(fnt_family)
* size: $(fnt_size)
* style: $(fnt_style)
* included characters: $(fnt_string)
* antialiasing: $(fnt_antialiasing)
* type: $(fnt_width_type)
* encoding: $(fnt_encoding)
* unicode bom: $(fnt_use_bom)
*
* preset name: $(out_preset_name)
* data block size: $(img_data_block_size) bit(s), uint$(img_data_block_size)_t
* RLE compression enabled: $(img_rle)
* conversion type: $(pre_conv_type), $(pre_mono_type) $(pre_mono_edge)
* bits per pixel: $(out_bpp)
*
* preprocess:
*  main scan direction: $(pre_scan_main)
*  line scan direction: $(pre_scan_sub)
*  inverse: $(pre_inverse)
*******************************************************************************/

/*
 typedef struct {
     long int code;
     const tImage *image;
     } tChar;
 typedef struct {
     int length;
     const tChar *chars;
     } tFont;
*/

#include <stdint.h>
$(end_block_header)

$(start_block_images_table)
static const uint$(img_data_block_size)_t image_data_$(doc_name_ws)_0x$(out_char_code)[$(out_blocks_count)] = {
    $(out_image_data)
};
static const tImage $(doc_name_ws)_0x$(out_char_code) = { image_data_$(doc_name_ws)_0x$(out_char_code),
    $(out_image_width), $(out_image_height), $(img_data_block_size)};
$(end_block_images_table)

static const tChar $(doc_name_ws)_array[] = {
$(start_block_images_table)
  // character: '$(out_char_text)'
  {0x$(out_char_code), &$(doc_name_ws)_0x$(out_char_code)}$(out_comma)
$(end_block_images_table)
};

$(start_block_font_def)
const tFont $(doc_name_ws) = { $(out_images_count), $(doc_name_ws)_array };
$(end_block_font_def)


Полный список тегов шаблона приведён в документации.

Пример XML файла для хранения данных:
Кликните здесь для просмотра всего текста
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?xml version="1.0" encoding="utf-8"?>
<data type="font" name="fontUbuntu">
    <family>Ubuntu</family>
    <size>14</size>
    <style>Regular</style>
    <widthType>proportional</widthType>
    <antialiasing>false</antialiasing>
    <string> !"#$%&amp;'()*+,-./0123456789:;&lt;=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ЁАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюяё</string>
    <converted>/home/vladimir/workspace/lcd-image-converter-wiki/images/examplesfonts/font-ubuntu.c</converted>
    <chars>
        <char character=" " code="0020">
            <picture format="png">iVBORw0KGgoAAAANSUhEUgAAAAQAAAAWCAIAAABojaq5AAAAA3NCSVQICAjb4U/gAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAFklEQVQYlWP8//8/AwwwMSCBUQ4DAwBqiwMpgV3W6wAAAABJRU5ErkJggg==</picture>
        </char>
        <char character="!" code="0021">
            <picture format="png">iVBORw0KGgoAAAANSUhEUgAAAAUAAAAWCAIAAACHT8GHAAAAA3NCSVQICAjb4U/gAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAKklEQVQYlWP8//8/AxJgYkAFZPIZGRkZGRmpZx7RfEbi/EO0+4g0DycfAJ86CS1Un25bAAAAAElFTkSuQmCC</picture>
        </char>
        <char character="&quot;" code="0022">
            <picture format="png">iVBORw0KGgoAAAANSUhEUgAAAAgAAAAWCAIAAABysUo3AAAAA3NCSVQICAjb4U/gAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAKUlEQVQokWP8//8/AzbAhFUUnwTD////4aYhM0g3inQJRur5Y1QCAwAATfYSF7bK+PkAAAAASUVORK5CYII=</picture>
        </char>
        <char character="#" code="0023">
            <picture format="png">iVBORw0KGgoAAAANSUhEUgAAAAwAAAAWCAIAAAB7WupNAAAAA3NCSVQICAjb4U/gAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAATElEQVQokWP8//8/AyHARFDFwCtiZGRkZGREY5NuEkQfJFCQ2QxUCydGZJNwWceEpgKTjcU6ZIMRbBo4HGcgwU3Co4J06yh1OPUUAQAz0zAfsdiNaAAAAABJRU5ErkJggg==</picture>
        </char>
 
        ...
 
        <char character="ё" code="0451">
            <picture format="png">iVBORw0KGgoAAAANSUhEUgAAAAoAAAAWCAIAAAB2RJoKAAAAA3NCSVQICAjb4U/gAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAUklEQVQoka2QQQ7AIAgEGeL/v7y9tBWN4gE5LdkwLCDJ9uWJd9EGgCjO05SStwH1rTSzlyppx5fUpj5iAP+byOj6UvIlZnjqYjw/zPOAtZ/X7AfriDAV+eNqOgAAAABJRU5ErkJggg==</picture>
        </char>
    </chars>
</data>


Пример результата в формате "C":
Кликните здесь для просмотра всего текста
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
/*
 typedef struct {
     long int code;
     const tImage *image;
     } tChar;
 typedef struct {
     int length;
     const tChar *chars;
     } tFont;
*/
 
#include <stdint.h>
 
 
static const uint8_t image_data_fontUbuntu_0x20[22] = {
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0, 
    0xf0
};
static const tImage fontUbuntu_0x20 = { image_data_fontUbuntu_0x20, 4, 22};
static const uint8_t image_data_fontUbuntu_0x21[22] = {
    0xf8, 
    0xf8, 
    0xf8, 
    0xf8, 
    0xf8, 
    0xc8, 
    0xc8, 
    0xc8, 
    0xc8, 
    0xc8, 
    0xc8, 
    0xc8, 
    0xc8, 
    0xf8, 
    0xf8, 
    0xc8, 
    0xc8, 
    0xc8, 
    0xf8, 
    0xf8, 
    0xf8, 
    0xf8
};
static const tImage fontUbuntu_0x21 = { image_data_fontUbuntu_0x21, 5, 22};
static const uint8_t image_data_fontUbuntu_0x22[22] = {
    0xff, 
    0xff, 
    0xff, 
    0xc9, 
    0xc9, 
    0xc9, 
    0xc9, 
    0xc9, 
    0xff, 
    0xff, 
    0xff, 
    0xff, 
    0xff, 
    0xff, 
    0xff, 
    0xff, 
    0xff, 
    0xff, 
    0xff, 
    0xff, 
    0xff, 
    0xff
};
 
...
 
static const tImage fontUbuntu_0xd18f = { image_data_fontUbuntu_0xd18f, 10, 22};
static const uint8_t image_data_fontUbuntu_0xd191[44] = {
    0xff, 0xc0, 
    0xff, 0xc0, 
    0xff, 0xc0, 
    0xff, 0xc0, 
    0xe4, 0xc0, 
    0xe4, 0xc0, 
    0xff, 0xc0, 
    0xff, 0xc0, 
    0xf0, 0xc0, 
    0xc0, 0x40, 
    0xce, 0x00, 
    0x9f, 0x00, 
    0x80, 0x00, 
    0x80, 0x00, 
    0x9f, 0xc0, 
    0x8f, 0xc0, 
    0xc0, 0x40, 
    0xe0, 0x40, 
    0xff, 0xc0, 
    0xff, 0xc0, 
    0xff, 0xc0, 
    0xff, 0xc0
};
static const tImage fontUbuntu_0xd191 = { image_data_fontUbuntu_0xd191, 10, 22};
 
static const tChar fontUbuntu_array[] = {
 
// character: ' '
  {0x20, &fontUbuntu_0x20},
// character: '!'
  {0x21, &fontUbuntu_0x21},
// character: '"'
  {0x22, &fontUbuntu_0x22},
// character: '#'
  {0x23, &fontUbuntu_0x23},
// character: '$'
  {0x24, &fontUbuntu_0x24},
 
...
 
// character: 'ё'
  {0xd191, &fontUbuntu_0xd191}
};
 
const tFont fontUbuntu = { 161, fontUbuntu_array };


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

Демонстрация работы с программой


Скачать программу последней версии, ознакомится с документацией и примерами можно на домашней странице проекта.
0
Rius
Эксперт .NET
4548 / 2862 / 702
Регистрация: 25.05.2015
Сообщений: 8,832
Записей в блоге: 10
Завершенные тесты: 4
28.06.2015, 22:27  [ТС] #5
2015-06-24

Добавлен импорт/экспорт предустановок в формат XML. Для обмена настройками, размещения под управлением систем контроля версий (VCS), сохранения и переноса.
0
Voland_
1475 / 985 / 93
Регистрация: 04.01.2010
Сообщений: 3,253
28.06.2015, 22:57 #6
..дабы не оскорбить кого, но...
чем вам GIMP не понравился? http://www.gimphelp.org/formats.shtml

Не по теме:

ЗЫ: хотя, свой редактор под рукой, естественно, удобнее. я и сам делал подобный на дельфях. Но каждый проект графики и шрифтов требовал каких-то изменений в этой программке. Потому что вывод букав и графики на OLED'ах, LCD-шках везде разный. Он похож, но чем-то различается... То сдвиг не тот, то направление, то маску приходилось добавлять еще.

0
Rius
Эксперт .NET
4548 / 2862 / 702
Регистрация: 25.05.2015
Сообщений: 8,832
Записей в блоге: 10
Завершенные тесты: 4
28.06.2015, 23:04  [ТС] #7
Да, я знаком с GIMP. Классная программа для изображений, но это иное назначение. Хоть он и сохраняет в "С", но настроек там - кот наплакал. Просто сравните.

Вот от тех самых изменений я и уходил.
0
Rius
Эксперт .NET
4548 / 2862 / 702
Регистрация: 25.05.2015
Сообщений: 8,832
Записей в блоге: 10
Завершенные тесты: 4
28.06.2015, 23:15  [ТС] #8
Вот. Макрос/структура, RLE, альфа-канал и r5g6b5. И всё...
Графический редактор ЖК дисплеев (от Rius)
0
Voland_
1475 / 985 / 93
Регистрация: 04.01.2010
Сообщений: 3,253
29.06.2015, 10:57 #9
Rius, ну я с вами согласен. И это большое дело - расшарить свой редактор графических ресурсов, спасибо. Разрисовка шрифтов в тетрадках, с устным подсчетом 16тиричных или битовых значений и их внесение в сишный код - дело очень кропотливое и длительное.
Просто вы бы тогда создали бы некий "мастер" по созданию пиктограммы в памяти контроллера из пиктограммы реальной картинки (или картинок). Ведь битовые/байтовые сдвиги, расстояние между символами в шрифте, направление битов как по вертикали, так и по горизонтали, битность формата символов (1, 2, 3 бита (для полутонов), 8 бит, 12бит, 16бит, 24бита для цветных), разрядность данных в памяти - это в 90% удобно подтачивать именно "ручками" из кода, т.к. на все случаи жизни еще не приходилось мне видеть ни одного редактора.
Если жалко выкладывать исходники - попробуйте "вычленить" какую-нить часть именно по формированию данных из источника в получатель, например, в виде DLL и опишите интерфейс к ней. Это для разработчика станет удобной "форточкой", чтобы мастерить произвольные форматы результирующего файла.
1
Rius
Эксперт .NET
4548 / 2862 / 702
Регистрация: 25.05.2015
Сообщений: 8,832
Записей в блоге: 10
Завершенные тесты: 4
29.06.2015, 11:24  [ТС] #10
Voland_, задача создания Мастера в таком виде слишком сложна, чтобы пытаться охватить все варианты. А так - всё уже реализовано в настройках. Код же всегда ручками подтачивается. Здесь же вполне достаточно возможностей, чтобы смастерить произвольный формат результирующего файла, без изменения исходников программы.
Это попытка создания такого редактора, хотя анимации, например, ещё нет. Есть ещё как минимум 2 хороших проекта аналогичного назначения: один платный (не буду его тут рекламировать), другой от mikroe для своих компиляторов.
Исходники были открыты с самого основания проекта.
0
Voland_
1475 / 985 / 93
Регистрация: 04.01.2010
Сообщений: 3,253
29.06.2015, 11:26 #11
Цитата Сообщение от Rius Посмотреть сообщение
Исходники были открыты с самого основания проекта.
Сорри, слона-то и не приметил...
0
Rius
Эксперт .NET
4548 / 2862 / 702
Регистрация: 25.05.2015
Сообщений: 8,832
Записей в блоге: 10
Завершенные тесты: 4
19.03.2016, 18:08  [ТС] #12
2015-11-03
Альфа-канал сделан опциональным. Для удобства в отдельных случаях.
Имя документа предлагается в качестве имени файла.

2016-03-15
Исправлены ошибки в предпросмотре.

2016-03-19
Добавлена возможность объединения одинаковых символов для уменьшения занимаемой памяти.
Исправлена очистка не преобразованных (по условиям) символов.
0
bodya_men
Нарушитель
44 / 52 / 8
Регистрация: 01.07.2014
Сообщений: 1,007
Завершенные тесты: 3
30.05.2016, 11:09 #13
Хотел в очередной раз минусовать, но прога полезная все же, формат в C какой? Массив пикселей?
0
Витальич
1253 / 1164 / 172
Регистрация: 02.12.2013
Сообщений: 4,843
30.05.2016, 11:15 #14
В строке поиска наберете "Пример результата в формате "C":" и там искомое
1
Rius
Эксперт .NET
4548 / 2862 / 702
Регистрация: 25.05.2015
Сообщений: 8,832
Записей в блоге: 10
Завершенные тесты: 4
21.07.2016, 20:41  [ТС] #15
2016-07-21
  • Альфа-канал при генерации шрифта сделан постоянным, не отключаемым.
  • Реализовано указание и использование альфа-компонент в цветах кисти/фона.
  • Улучшена поддержка прозрачного фона в символах.
  • Указание цветов кисти/фона шрифта в командной строке.
  • Добавлен вывод параметров ascent/descent для шрифта в выходной файл.
  • Переделан диалог настройки шрифта.
  • Диапазон символов юникода исправлен на Qt-шный, 16-битный, 0x0000...0xffff.
  • Обновлён формат лога изменений.
  • Исправлены некоторые случаи падения приложения при ошибочных пользовательских скриптах.
2
Rius
Эксперт .NET
4548 / 2862 / 702
Регистрация: 25.05.2015
Сообщений: 8,832
Записей в блоге: 10
Завершенные тесты: 4
21.03.2017, 06:29  [ТС] #16
2016-10-12
  • Добавлено
    • Меню 'Файл' -> 'Закрыть всё'.
    • Сохранение последнего каталога и фильтра в диалогах выбора файла.
    • Отображение исходного и нового размера в диалоге изменения размеров.
    • Фильтры *.cpp и *.h в диалоге сохранения результата.
    • Выбор участков изображения мышью.
    • Перемещение мышью выбранных участков или всего изображения.
  • Исправлено
    • Альфа-канал в окне предпросмотра для цветных изображений.
    • Сохранение последнего масштаба в окне предпросмотра.
    • Сохранение пробелов при импорте/экспорте настроек.
    • Увеличена скорость выполнения JS.
    • При попытке повторного открытия XML файла, активируется вкладка с ранее открытым файлом.
  • Изменено
    • Формат истории изменений.
    • Обработка движений мыши при выходе за пределы изображения.
    • При наличии выбранного участка, рисование происходит только внутри него.

2017-03-19
  • Добавлено
    • Изменение масштаба колесом мыши в диалоге изменения размеров.
    • Опции командной строки --config-application и --config-presets для указания файлов, в которых содержатся настройки. Для возможности помещения части настроек в проект, под управление системы контроля версий.
    • Опция командной строки --config-reset для сброса настроек в состояние по умолчанию.
  • Исправлено
    • Ширина колонок в таблице символов в диалоге создания шрифта.
    • Режим прокрутки в диалоге изменения размеров.
    • Выбор предыдущего размера шрифта в диалоге его настройки.
    • Потеря альфа-канала при изменении размеров и сдвиге/вращении изображений с альфа-каналом.
    • Загрузка параметров при открытии диалога настроек преобразования, если в списке выбран первый пункт.
  • Изменено
    • Цвет выделения стал инверсным, для большей заметности на цветном фоне.
    • Именование секций данных в настройках, для совместимости с XML форматом.
  • Удалено
    • Поддержка предыдущих версий настроек.
1
Pavel_uxx
0 / 0 / 0
Регистрация: 31.01.2017
Сообщений: 1
05.01.2018, 23:43 #17
Rius, а возможность преобразования из бинарного, используемого в виде отдельного файла в формат картинки (картинок) Вы не рассматривали? Очень полезная функция!!!
0
Rius
Эксперт .NET
4548 / 2862 / 702
Регистрация: 25.05.2015
Сообщений: 8,832
Записей в блоге: 10
Завершенные тесты: 4
06.01.2018, 01:09  [ТС] #18
Pavel_uxx, рассматривал. В редких случаях может быть и полезная, но у меня необходимость такого не возникала. Врядли будет когда-нибудь реализовано.
0
HerrSchneider
6 / 6 / 2
Регистрация: 08.07.2017
Сообщений: 59
14.04.2018, 23:00 #19
ООО, то что нужно. разберемся.
0
14.04.2018, 23:00
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.04.2018, 23:00
Привет! Вот еще темы с решениями:

Калькулятор, редактор списка строк, графический редактор
Калькулятор:

Калькулятор, редактор списка строк, графический редактор
Помогите, кто чем может! Очень надо,хотя бы что то из этого сделать!

Графический редактор
Скиньте пожалуйста исходники, у меня есть один, но он очень сложный для меня,...

Графический редактор
Создать простейший графический редактор(ломанные линии и замена цвета заливки)


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru