Класс для работы с рисунками в формате BMP (чистый 8.x без внешних компонент)

02.12.13

Разработка - Работа с интерфейсом

Возможности:
- Позволяет читать файлы BMP и вносить в них некоторые изменения из кода 1С;
- Создание рисунков «с нуля»;
- Набор примитивных инструментов: Изменение размера холста, получение цвета точки (пипетка), попиксельно рисование (карандаш), рисование окружностей, прямых, прямоугольников, треугольников и наличие заливки;
- Полученный файл можно конвертировать в любой формат (опять же средствами 1С).

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
BMP.epf
.epf 21,51Kb
159 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Плюсы:

- Работа в контексте сервера 1С предприятия;

- Наличие работоспособного примера с вызовом всех описанных функций;

- Описание приложено в справку;

- Просто интересно как оно устроено.

Минусы:

- Скорость (довольно медленно, особенно заметно на больших размерах, узкое место - заливка);

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

- Изображения с шириной/высотой 10, 266, 522, 778, 1034... из-за особенностей кодировки не записываются (т.к. символ 10 является для платформы 1С служебным и перед ним добавляется «возврат каретки», что нарушает внутреннюю структуру файла).

 

Писалось для себя, без особой надобности, ради интереса. Забыл сказать, что модуль объекта - это и есть класс, форма - пример работы с ним.

Обновление 2.12.13

- Поддержка всех размеров, устранено ограничение первой версии.

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Работа с интерфейсом Анализ учета Мониторинг 1С:Предприятие 8 1С 8.3 1C:Бухгалтерия 1С:Бухгалтерия 3.0 1С:ERP Управление предприятием 2 1С:Управление холдингом 1С:Зарплата и Управление Персоналом 3.x 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Управление торговлей 11 Платные (руб)

Создайте свой функциональный интерфейс в любой конфигурации 1С с помощью расширения Infostart Dashboard. Настраивайте панели виджетов с метриками, индикаторами и показателями на начальном экране. Узнайте возможность внедрения подсистемы у себя в конфигурации с помощью бесплатной обработки "Анализ внедрения подсистемы 1С Infostart Dashboard"!

31720 руб.

27.03.2025    84360    60    42    

71

Работа с интерфейсом Рабочее место 1С:Предприятие 8 1C:Бухгалтерия 1С:Комплексная автоматизация 2.х Платные (руб)

Универсальный редактор картинок 1С предназначен для обработки изображений в режиме «Предприятие», с возможностью рисовать на них. Поддерживается работа как в обычных формах (толстый клиент) так и на управляемых формах (тонкий клиент). В комплект поставки включены Расширения для легкого подключения данного функционала в БК, УТ, КА и ERP. Обработка позволяет редактировать как картинки, хранимые в базе, так и графические файлы с диска на файловой системе. Помимо базовых функций (изменение размеров, преобразование формата, обрезание картинки, повороты и т.п.) – редактор имеет богатый набор инструментов для рисования. Доступна функция вставки изображения из буфера обмена. Объект может быть использован: на стороне клиента, на стороне сервера, из внешнего соединения. Обработка будет особенно полезна тем, кто вносит картинки в базу. Функционал реализуется с использованием JavaScript и бесплатного ПО ImageMagick (без использования внешних компонент).

6100 руб.

16.01.2015    68628    46    60    

85

Работа с интерфейсом Программист 1С:Предприятие 8 1C:Бухгалтерия 1С:ERP Управление предприятием 2 Платные (руб)

Обработка предназначена для создания и управления дашбордами (виджетами) в 1С.

5246 руб.

29.06.2020    24942    34    6    

53

Консолидация данных Работа с интерфейсом Программист Пользователь 1С:Предприятие 8 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 1C:ERP Узбекистан Беларусь Кыргызстан Россия Казахстан Платные (руб)

Знакомая ситуация? Пользователи, особенно менеджеры, уверены: отборов много не бывает. Идут пожелания добавить в форму списка еще один быстрый фильтр, еще два, еще пять... В итоге интерфейс превращается в нагромождение полей отбора, а потребность в «самом главном» отборе, который «вот прямо сейчас нужен», все равно не закрыта. Универсальное расширение, которое решает эту проблему элегантно и технологично. С его помощью в любую форму списка можно легко добавить панель настраиваемых кнопок-закладок, каждая из которых применяет сложный фильтр-запрос, а так же показывает актуальное количество элементов в реальном времени.

6088 руб.

17.10.2025    2255    3    0    

2

Разработка Инструментарий разработчика Работа с интерфейсом Адаптация типовых решений Нейросети 1C:Бухгалтерия 1C:ERP 1С:ЗУП 1С:КА 1С:УНФ 1С:УТ 1С:Розница 1С:ДО 1С:ERP Управление предприятием 2 Платные (руб)

Разработка "Дизайнер форм 1С" реализована в виде расширения 1С и является универсальным инструментом для разработки прототипа форм с целью демонстраций, технических заданий и т.д. Без участия разработчика с возможностью экспорта в файл внешней обработки и генерации формы используя искусственный интеллект.

36600 руб.

28.08.2025    8173    2    2    

6

Работа с интерфейсом Программист Стажер 1С:Предприятие 8 Бесплатно (free)

Это инструкция по дизайну форм в среде 1С. Гайд охватывает рекомендации и стандарты для оптимизации пользовательского интерфейса. В гайде содержатся указания по использованию элементов интерфейса, включая как основные, так и продвинутые аспекты. Предоставляются также примеры и антипримеры для наглядного понимания принципов дизайна

20.08.2024    50351    mrXoxot    44    

139

Работа с интерфейсом Программист 1С:Предприятие 8 Бесплатно (free)

Пример простого и симпатичного прогресс-бара в динамическом списке, без картинок, используя редактирование запроса.

27.05.2024    26702    smielka    39    

117
Отзывы
15. AllexSoft 02.03.17 10:23 Сейчас в теме
Классная обработка, очень выручила! Умеет генерить 24х битный BMP (что важно). Пригодилась для генерации палитры цветов по справочнику в 1С.
yku; DrAku1a; Serj1C; +3 Ответить
9. Serj1C 484 02.12.13 21:39 Сейчас в теме
Обновление 2.12.13

- Поддержка всех размеров, устранено ограничение первой версии.
Остальные комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Serj1C 484 05.11.10 22:52 Сейчас в теме
(0) Убогая картинка в анонсе кстати была нарисована в 1С
В обработке приведен этот скрипт
На форме поле ввода позволяет на лету выполнять код и радоваться результату))
2. tormozit 7377 10.11.10 13:35 Сейчас в теме
3. delwish 10.11.10 17:02 Сейчас в теме
скоро 1С заменит винду - paint уже готов :D
4. Serj1C 484 10.11.10 19:33 Сейчас в теме
(3) В конфигураторе паинт всегда был))
5. markers 279 13.11.10 13:02 Сейчас в теме
Ну что сказать, несомненно плюс!!!! Если б ещё JPG делать, вообще была бы красава :))
6. Serj1C 484 13.11.10 21:26 Сейчас в теме
(5) Максимум, что могу предложить - PNG (для таких убогих картинок - идеальный вариант)
	Имя_PNG = ПолучитьИмяВременногоФайла("PNG");
	ЭлементыФормы.Рисунок.Картинка.Преобразовать(ФорматКартинки.PNG);
	ЭлементыФормы.Рисунок.Картинка.Записать(Имя_PNG);
	ЗапуститьПриложение(Имя_PNG);

В jpeg 1С преобразовывать не хочет, пишет "Ошибка преобразования картинки"
7. markers 279 14.11.10 23:07 Сейчас в теме
(6) Спасиб хоть на этом :)
8. trustgros 9 14.12.11 18:25 Сейчас в теме
отличная вещь. думаю пригодится
9. Serj1C 484 02.12.13 21:39 Сейчас в теме
Обновление 2.12.13

- Поддержка всех размеров, устранено ограничение первой версии.
10. kazimesh 31.08.15 18:12 Сейчас в теме
Привет всем. Может кому-нибудь пригодится. У меня Функция Прочитать(ИмяФайла) вызывала ошибку "Неожиданный конец файла", когда я просил нарисовать не с нуля, а свыбранного файла. Убрал прерывание на ошибке, получил считывание картинки сжатой по оси Y в два раза. Разбор кода показал, что вот этот блок в процедуре:
Данные = ЧтениеПотока(Поток, Ширина*ГлубинаЦвета + Дополнение, БайтПрочитано);
			Если Данные=Неопределено Тогда
				ОписаниеОшибки = "Неожиданный конец файла";
				//Возврат Ложь;
				Прервать;
			КонецЕсли;

вызывает ускоренное чтение переменной "Поток", а нужен он только для проверки. Комментинируем этот блок - все работает хорошо.
chemezov; Serj1C; +2 Ответить
11. Serj1C 484 01.09.15 08:41 Сейчас в теме
(10) kazimesh, Возможно в заголовке файла используется палитра или нестандартная глубина цвета.
Полную поддержку формата я не реализовывал, о чем указал в "минусах".

Но больше всего мне не нравится скорость. Хочется добавить версию через COMОбъект("ADODB.Stream")
12. Serj1C 484 03.02.16 12:29 Сейчас в теме
Ждем 8.3.9, можно работать с двоичными данными!
http://v8.1c.ru/o7/201602bin/index.htm
13. Dvornik 20 20.05.16 06:31 Сейчас в теме
Может не в тему вопрос. А толщину отрезка можно задавать?
14. Serj1C 484 20.05.16 09:49 Сейчас в теме
(13) Dvornik, Нет, но могу предложить нарисовать 3 отрезка
15. AllexSoft 02.03.17 10:23 Сейчас в теме
Классная обработка, очень выручила! Умеет генерить 24х битный BMP (что важно). Пригодилась для генерации палитры цветов по справочнику в 1С.
yku; DrAku1a; Serj1C; +3 Ответить
17. Serj1C 484 15.07.22 01:33 Сейчас в теме
Не могу не похвастаться. Через 12 лет моя же обработка пригодится, чтобы сгенерировать картинки для ардуино проекта!
Прикрепленные файлы:
18. chemezov 50 18.08.22 15:29 Сейчас в теме
Добрый день. Скачал вашу обработку. не могу разобраться каким методом нужно пользоваться чтобы получить цвет пикселя. Подскажите пожалуйста, какой метод вашего класса является тем что в описании называется "пипетка"?
19. Serj1C 484 25.08.22 13:58 Сейчас в теме
(18) Добрый день.
Вам надо использовать функцию Точка(X, Y) без передачи третьего параметра.
Функция вернут строку из трех символов, если получить коды этих символов, то будут соответственно уровни каналов от 0 до 255 для красного, синего и зеленого
Прикрепленные файлы:
chemezov; +1 Ответить
20. chemezov 50 25.08.22 17:24 Сейчас в теме
(19)
чить коды этих символов, то будут соо

Супер! Спасибо
Для отправки сообщения требуется регистрация/авторизация