Добрый день Подскажите, как сохранить печатную форму в формат jpg.
kostya77 @ Сегодня, 15:28
,
це можна зробити з допомогою компонент SpreadSheet.dll та Formex.dll. Колись давно таке робив.
kostya77 @ Сегодня, 16:33
,
Ось так в мене формується в ПДФ. (в малюнок не пробував. В описі компоненти Йоксель(SpreadSheet.dll) є можливість зберегти як малюнок)
ЗагрузитьВнешнююКомпоненту ("SpreadSheet.dll");
....
Таб.ВывестиСекцию("......"); // виводим всі секції як звичайно
ТабЭлемент=СоздатьОбъект("ТабличныйДокумент");
ТабЭлемент.ЗагрузитьИзТаблицы(Таб);
Имя="Док"+Строка(НомерДок)+"_"+Формат(ДатаДок,"ДДДММГГ")
Имя=СтрЗаменить(Имя,".","-");
Имя=СтрЗаменить(Имя,"/","-");
Имя=СтрЗаменить(Имя,"\","-");
Имя=СтрЗаменить(Имя," ","");
Имя=СтрЗаменить(Имя," ","");
Каталог="D:\SendMail\";
ИмяФайла=Каталог+Имя+".PDF";
Если ФС.СуществуетФайл(ИмяФайла)=1 Тогда
Ответ=Вопрос("Файл существует!
|Переписать?","Да+Нет");
Если Ответ="Нет" Тогда
Возврат;
КонецЕсли;
КонецЕсли;
Конвертер = СоздатьОбъект ("Йоксель.ГрафическийКонвертер.PDF");
Конвертер.ВысотаСтраницы = 16840; //А4
Конвертер.ШиринаСтраницы = 11907; //А4
Конвертер.КоличествоБитНаПиксел = 24;
Конвертер.Документ = ТабЭлемент;
Конвертер.ПолеСлева = 600;
Конвертер.ПолеСверху = 600;
Конвертер.ПолеСправа = 600;
Конвертер.ПолеСнизу = 600;
Данные = Конвертер.СтандартныеМетаданные;
Конвертер.ЗаписатьВФайл (ИмяФайла);
kostya77 @ Вчера, 19:44
,
щось таке в мене є
Функция ВыбратьПуть(ФорматФайла)
Если ФС.ВыбратьФайл(1, ИмяФайла, Каталог, "Выберите папку для сохранения отчета.", "(*."+ФорматФайла+")| *."+ФорматФайла+"", ""+ФорматФайла+"" ) = 0 Тогда
Возврат "";
КонецЕсли;
Каталог_Плюс_ИмяФайла = ""+Каталог + ИмяФайла+"";
ИмяФайла = СтрЗаменить(ВРЕГ(ИмяФайла), "."+ВРЕГ(ФорматФайла), "");
Возврат(Каталог_Плюс_ИмяФайла);
КонецФункции
Процедура ЗагрузитьДЛЛ()
Попытка
КонвертерPDF = СоздатьОбъект ("Йоксель.ГрафическийКонвертер.PDF");
Исключение
Если ЗагрузитьВнешнююКомпоненту ("SpreadSheet.dll") = 0 Тогда
Предупреждение ("Не удалось загрузить компоненту SpreadSheet.dll");
Форма.Закрыть(0);
КонецЕсли;
Попытка
КонвертерPDF = СоздатьОбъект ("Йоксель.ГрафическийКонвертер.PDF");
Исключение
Сообщить("Ошибка Йоксель!");
Сообщить(ОписаниеОшибки());
Форма.Закрыть();
КонецПопытки;
КонецПопытки;
Попытка
МойФормекс = СоздатьОбъект("Сервис");
Исключение
Если ЗагрузитьВнешнююКомпоненту ("Formex.dll") = 0 Тогда
Предупреждение ("Не удалось загрузить компоненту Formex.dll");
Форма.Закрыть(0);
КонецЕсли;
Попытка
МойФормекс = СоздатьОбъект("Сервис");
Исключение
Сообщить("Ошибка Формекс!");
Сообщить("Ошибка: " + ОписаниеОшибки());
Форма.Закрыть(0);
КонецПопытки;
КонецПопытки;
КонецПроцедуры
Процедура Сохранить_Как_Изображение()
ЗагрузитьДЛЛ();
ФорматыИзображений = СоздатьОбъект("СписокЗначений");
ФорматыИзображений.ДобавитьЗначение("JPG", "Формат JPG");
ФорматыИзображений.ДобавитьЗначение("BMP", "Формат BMP");
ФорматыИзображений.ДобавитьЗначение("PNG", "Формат PNG");
ФорматИзображения = 0;
Если МойФормекс.ВыбратьЗначение(ФорматыИзображений, ФорматИзображения, , 2) = 0 Тогда
Возврат;
КонецЕсли;
ПутьКФайлу = ВыбратьПуть(ФорматИзображения);
Если ПустоеЗначение(ПутьКФайлу) = 1 Тогда
Возврат;
КонецЕсли;
Если ПустоеЗначение(Таб) = 1 Тогда
Возврат;
КонецЕсли;
Попытка
ТабДок = СоздатьОбъект("ТабличныйДокумент");
ТабДок.ЗагрузитьИзТаблицы(Таб);
ТабДок.ЗаписатьКакИзображение(ПутьКФайлу, ФорматИзображения);
//** качество вроде тоже, а размер файла больше....
//Конвертер = СоздатьОбъект ("Йоксель.ГрафическийКонвертер");
//Конвертер.УстановитьДокумент (ТабДок);
//Конвертер.КоличествоБитНаПиксел = 24;
//
//Картинка = Конвертер.ПолучитьИзображение ();
//Картинка.Записать (ПутьКФайлу, 1);
Сообщить("Печатная форма сохранена: " + ПутьКФайлу );
Если Вопрос("Открыть сохраненный документ?", "Да+Нет") = "Нет" Тогда
Возврат;
КонецЕсли;
Попытка
ЗапуститьПриложение(ПутьКФайлу);
Исключение
Сообщить("Не удалось открыть файл: " + ПутьКФайлу);
КонецПопытки;
Исключение
Сообщить("Не удалось сохранить в "+ФорматИзображения+" файл.");
Сообщить("Ошибка: " + ОписаниеОшибки());
КонецПопытки;
КонецПроцедуры
kostya77 @ Сегодня, 8:31
,
це в мене було в обробці, то "форматизображения" визивався на кнопці
denis84 @ Сегодня, 13:20
,
ок. дякую
kostya77 @ Сегодня, 13:29
,
Де можна скачати Formex.dll?
kostya77 @ Сегодня, 13:50
,
по гуглить можливо на наших українських сайтах є.
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua