Содержание:
1. Подготовка рисунка в 1С
2. Вставка изображения в макет программно
Подготовка рисунка в 1С
Прежде чем вставить изображение в макет, нужно подготовить сам рисунок. Для этого можно:
- Хранить изображение в виде файла (например, в формате PNG, JPEG и т.д.).
- Хранить изображение в базе данных (например, в виде значения типа ХранилищеЗначения).
Вставка изображения в макет программно
Этап 1. Загрузка рисунка
Изображение может быть загружено из файла или взято из ХранилищаЗначения (если оно уже сохранено в базе данных). Рассмотрим оба случая.
Вариант 1. Загрузка из файла
// Загружаем изображение из файла
ПутьКФайлу = “C:\Images\logo.png”;
Рисунок = Новый Рисунок(ПутьКФайлу);
Вариант 2. Загрузка из хранилища
Если изображение хранится в базе данных (например, в константах), можно загрузить его так:
// Извлекаем изображение из хранилища
РисунокХранение = Константы.ЛоготипОрганизации.Получить();
Рисунок = РисунокХранение.Получить();
Этап 2. Создание макета и вставка изображения
После того как изображение загружено, его можно вставить в макет печатной формы. Для этого используется объект ТабличныйДокумент. Макет создается программно, и в него добавляется область, в которой размещается рисунок.
// Создаем табличный документ
ТабДок = Новый ТабличныйДокумент;
// Вставляем изображение в ячейку табличного документа
ТабДок.Область(0, 0).Рисунок = Рисунок;
// Отображаем табличный документ
ТабДок.Показать();
Этап 3. Настройка размеров и положения рисунка
Рисунок можно отобразить в определенной ячейке или области документа и задать его размеры. Это делается через свойства области, в которую вставляется изображение.
// Указываем размеры рисунка (в миллиметрах)
ОбластьРисунка = ТабДок.Область(0, 0);
ОбластьРисунка.Рисунок = Рисунок;
ОбластьРисунка.Ширина = 50; // Ширина 50 мм
ОбластьРисунка.Высота = 30; // Высота 30 мм
Этап 4. Вставка рисунка в заранее подготовленный макет
Если в конфигурации уже создан макет, в который требуется программно добавить изображение, можно воспользоваться существующим макетом и добавить туда рисунок программно.
Пример добавления рисунка в макет:
// Получаем макет
Макет = ЭтотОбъект.ПолучитьМакет(“МакетСчетаФактуры”);
ТабДок = Макет.ПолучитьОбласть(“ОбластьЛоготипа”);
// Вставляем рисунок в нужную область макета
ТабДок.Рисунок = Рисунок;
// Отображаем табличный документ
ТабДок.Показать();
5. Вывод на печать
После того как рисунок вставлен в макет, можно вывести табличный документ на печать с помощью метода Печать()
:
ТабДок.Печать();
6. Полный пример
Ниже приведен полный пример кода, который загружает изображение из файла, вставляет его в макет и выводит документ на печать.
Процедура СформироватьПечатнуюФорму()
// Загружаем изображение
ПутьКФайлу = “C:\Images\logo.png”;
Если ФайлСуществует(ПутьКФайлу) Тогда
Рисунок = Новый Рисунок(ПутьКФайлу);
Иначе
Сообщить(“Файл не найден: ” + ПутьКФайлу);
Возврат;
КонецЕсли;
// Создаем табличный документ
ТабДок = Новый ТабличныйДокумент;
// Вставляем рисунок в первую строку
ОбластьРисунка = ТабДок.Область(0, 0);
ОбластьРисунка.Рисунок = Рисунок;
ОбластьРисунка.Ширина = 50; // Задаем ширину
ОбластьРисунка.Высота = 30; // Задаем высоту
// Выводим текстовую информацию
ТабДок.Вывести(“Счет на оплату №123 от ” + ДатаТекущая());
ТабДок.Вывести(“Организация: ООО ‘Ромашка'”);
ТабДок.Вывести(“Выручка: 100 000 руб.”);
// Отображаем табличный документ
ТабДок.Показать();
// Печать документа
ТабДок.Печать();
КонецПроцедуры
Специалист компании ООО “Кодерлайн”,
Дубровина Елена
Добавить комментарий