helpf.pro
Регистрация
 +35 
Распечатать

1С 7.x : Вывод картинки (изображения) на печать, в макет (табличный документ)

Код 1C v 8.х
 // 1-й вариант
//Как вывести картинку в табличный документ?

ТабДок = Новый ТабличныйДокумент;
Макет = ОбработкаОбъект.ПолучитьМакет("Макет");
ОбластьКартинки = Макет.ПолучитьОбласть("ОбластьСКартинкой");
Картинка = Новый Картинка(ПутьККартинке);

// Элемент управления "Логотип" входит в коллекцию картинок области.
ОбластьКартинки.Рисунки.Логотип.Картинка = Картинка;
ТабДок.Вывести(ОбластьКартинки);

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

// 2-й вариант
//Как вывести картинку в табличный документ без изменения макета?

Область = Макет.ПолучитьОбласть("Шапка");
Рисунок = Область.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
Рисунок.Верх = 5;
Рисунок.Высота = 10;
Рисунок.Ширина = 10;
Рисунок.Лево = 5;
Рисунок.Картинка = Новый Картинка(ПутьККартинке);
Рисунок.РазмерКартинки = РазмерКартинки.РеальныйРазмер;

ТабДок.Вывести(Область);

//3-й вариант
//ПечатьОрганизации , добавляем в макет картинку с именем Картинка1 в самую нижнюю
//область с именем ОбластьПечатьОрганизации
ОбластьПечатьОрганизации = Макет.ПолучитьОбласть("ПечатьОрганизации");
Картинка= Новый Картинка("C:\files\img\печатьОрганизации.gif") ;
ОбластьПечатьОрганизации.Рисунки.Картинка1.Картинка = картинка;
ТабДок.Вывести(ОбластьПечатьОрганизации);

// 4-й вариант динамически
ОбластьПечатьОрганизации = Макет.ПолучитьОбласть("ПечатьОрганизации");
КартинкаПечатьОрганизации = ОбластьПечатьОрганизации.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
КартинкаПечатьОрганизации.Картинка = БиблиотекаКартинок.ОбщаяКартинка1;
КартинкаПечатьОрганизации.Верх = 0;
КартинкаПечатьОрганизации.Высота = 80;
КартинкаПечатьОрганизации.Ширина = 80;
КартинкаПечатьОрганизации.Лево = 50;
КартинкаПечатьОрганизации.ГраницаСверху = Ложь;
КартинкаПечатьОрганизации.ГраницаСлева = Ложь;
КартинкаПечатьОрганизации.ГраницаСправа = Ложь;
КартинкаПечатьОрганизации.ГраницаСнизу = Ложь;
КартинкаПечатьОрганизации.РазмерКартинки = РазмерКартинки.АвтоРазмер;
ТабДок.Вывести(ОбластьПечатьОрганизации);

//5-й вариант получение картинки из хранилища значений
// Выборка.Изображение - выборка из запроса, Изображение реквизит -хранил. значений
Попытка
Путь = КаталогВременныхФайлов()+ "\1С_Картинка_"+Формат(ТекущаяДата(),"ДФ=yyyyMMddЧЧммсс")+".bmp";
КартинкаВПамяти = Выборка.Изображение.Получить();
КартинкаВПамяти.Записать(Путь);
ОбластьСостав.Рисунки.D1.Картинка = Новый Картинка(Путь);
Исключение
ОбластьСостав.Рисунки.D1.Картинка = Новый Картинка;
КонецПопытки;


Для 7.7 пример обработки, которая выводит все картинки (.jpg) из выбранного каталога (и подкаталогов) в печатную форму Скачивать файлы может только зарегистрированный пользователь!
Вот ее код:
Код 1C v 7.x
 Перем Картинка, ТЗКаталога, ПутьКаталогаРисунков;
//******************************************************************************
Процедура Сформировать1()
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("Сформировать");
Картинка = СоздатьОбъект("Картинка");
т=1;
ТЗКаталога.ВыбратьСтроки();
Пока ТЗКаталога.ПолучитьСтроку() = 1 Цикл
Картинка.Загрузить(ТЗКаталога.Путь);
Сформировать = т;
Таб.ВывестиСекцию("Заголовок");
т = т+1;
КонецЦикла;
Таб.Опции(0,0,0,0);
Таб.Показать("Сформировать","");
ТЗКаталога = "";
КонецПроцедуры
//******************************************************************************
Процедура карт(карт) //Вызывается из объекта картинка на печатной форме
карт.РежимРисования(3);
карт.УстановитьКартинку(Картинка);
КонецПроцедуры //карт(карт) Вызывается из объекта картинка на печатной форме
//******************************************************************************
Процедура СканироватьКаталог(Каталог)
Перем А;
ФСО=СоздатьОбъект("ФС");
Ф=ФСО.НайтиПервыйФайл(Каталог+"*");
Пока Ф<>"" Цикл
Если (Ф<>".")И(Ф<>"..") Тогда
ФС.АтрибутыФайла(Каталог+Ф,,А);
Если Сред(А,4,1)="1" Тогда
СканироватьКаталог(Каталог+Ф+"\");
Иначе
Если (Прав(Ф,4)=".jpg") или (Прав(Ф,4)=".wmf") или (Прав(Ф,4)=".emf") или (Прав(Ф,4)=".ico") или (Прав(Ф,4)=".bmp") или (Прав(Ф,4)=".dib") или (Прав(Ф,4)=".rle") Тогда
ТЗКаталога.НоваяСтрока();
ТЗКаталога.Путь = Каталог+Ф;
ТЗКаталога.Файл = Ф; //Для поиска файла по имени (исп в другой обработке)
КонецЕсли;
КонецЕсли;
КонецЕсли;
//Сообщить(Каталог+Ф);
Ф=ФСО.НайтиСледующийФайл();
КонецЦикла;
КонецПроцедуры //СканироватьКаталог(Каталог)
//******************************************************************************
Процедура Сформировать()
Если ФС.ВыбратьКаталог(ПутьКаталогаРисунков,"Выберете папку с рисунками .jpg...",60) <> 1 Тогда
Предупреждение("Рисунки не покажу!");
Возврат;
Иначе
ТЗКаталога = СоздатьОбъект("ТаблицаЗначений");
ТЗКаталога.НоваяКолонка("Путь",,,,,,,);
ТЗКаталога.НоваяКолонка("Файл",,,,,,,);
СканироватьКаталог(ПутьКаталогаРисунков+"\");
КонецЕсли;
Сформировать1();
КонецПроцедуры
Разместил:   Версии: | 7.x | 8.x |  Дата:   Прочитано: 223136
 +35 
Распечатать
Возможно, вас также заинтересует
Выгрузка метаданных конфигурации в Microsoft Word и Excel 1
Перем ОбъектыКонфы; Перем СтруктКонфы; Процедура ВыгрузитьВWord() Попытка Word = Новый COMОбъект(" Word.Application" ); Исключение Сообщить(" Не удалось открыть Word" ); Возврат; КонецПопытки; Word.Documents.Add(); Документ = Word.Activ
Как получить высоту картинки, изображения, локально и в интернет. 0
Шелл=СоздатьОбъект(" Shell.Application" ); Место=Шелл.NameSpace(Путь); Сообщить(Место.GetDetailsOf(Место.ParseName(Файл),26)); А если картинка на интерне сайте, и нужно узнать ее высоту, то: ИЕ=CreateObject(" InternetExplorer.Application" ); И
Как сформировать, вывести на печать таблицу, табличный документ 2
//Получение макета и областей вывода Макет = ПолучитьМакет(" Отчет" ); ОбластьЗаголовок = Макет.ПолучитьОбласть(" Заголовок" ); ОбластьКартинки = Макет.ПолучитьОбласть(" ОбластьСКартинкой" ) ОбластьШапкаТаблицы = Макет.ПолучитьОбласть(" Шапка
Посмотреть все результаты поиска похожих
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.