|

Вставить рисунок в макет печатной формы программно 1С


Содержание:

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 руб.”);

    // Отображаем табличный документ

    ТабДок.Показать();

    // Печать документа

    ТабДок.Печать();

КонецПроцедуры

Специалист компании ООО “Кодерлайн”,

Дубровина Елена


Помогла ли вам статья? Оставьте свой комментарий:

Добавить комментарий

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

Блог про 1С:Предприятие

Copyright © 2024 TopKoder

Мы занимаемся внедрением и обслуживанием программных продуктов 1С.