Добрый день.
Имеем:
Комплексная автоматизация, редакция 1.1 (1.1.90.1)
1С:Предприятие 8.3 (8.3.8.2322)
Обычные формы.
Делаю печатную форму, на первой странице втыкается картинка (программно), она должна быть размером с лист А4.
Вроде как размеры указал (210*297), но при выводе на предпросмотр выясняется, что даже при нулевых полях - какие то поля есть. Как результат картинка разбивается на несколько страниц и так и сохраняется в pdf.
Вывод осуществляется в ПолеТабличногоДокумента.
Так как страниц на выходе несколько, не могу использовать ФоноваяКартинка.
Собственно вопрос, кто-нибудь уже накрывал страницу картинкой?
Спасибо.
Имеем:
Комплексная автоматизация, редакция 1.1 (1.1.90.1)
1С:Предприятие 8.3 (8.3.8.2322)
Обычные формы.
Делаю печатную форму, на первой странице втыкается картинка (программно), она должна быть размером с лист А4.
Вроде как размеры указал (210*297), но при выводе на предпросмотр выясняется, что даже при нулевых полях - какие то поля есть. Как результат картинка разбивается на несколько страниц и так и сохраняется в pdf.
Вывод осуществляется в ПолеТабличногоДокумента.
Так как страниц на выходе несколько, не могу использовать ФоноваяКартинка.
Собственно вопрос, кто-нибудь уже накрывал страницу картинкой?
Спасибо.
По теме из базы знаний
- Как создать свою внешнюю печатную форму к обработкам АЛАНН
- Подключаемые печатные формы с .DOCX макетом без Word'а
- Печатные формы КС-2 и КС-3 в "1С:Бухгалтерия 3.0"
- Печатные формы, отчеты, HTML,JS в новом релизе SimpleUI. Август 2022.
- Отправка в чат телеграм документов и справочников с вложением печатной формы
Найденные решения
(4). Платформы под рукой сейчас не имею, да и сам я в легком подпитии (В Хабаровске уже глубокий вечер пятницы).
Но я бы рекомедовал попробовать вот так:
Но я бы рекомедовал попробовать вот так:
ТабДокумент=ЭлементыФормы.ПолеТабличногоДокумента;
ТабДокумент.Очистить();
ТабДокумент.ВерхнийКолонтитул.Выводить=Ложь;
ТабДокумент.НижнийКолонтитул.Выводить=Ложь;
ТабДокумент.ОтображатьСетку=Истина;
ТабДокумент.ОтображатьЗаголовки = Истина;
ТабДокумент.ПолеСверху=0;
ТабДокумент.ПолеСнизу=0;
ТабДокумент.ПолеСлева=0;
ТабДокумент.ПолеСправа=0;
ТабДокумент.ОтображатьГруппировки=Ложь;
ТабДокумент.АвтоМасштаб=Ложь;
ТабДокумент.МасштабПечати=100;
ПутьДоКартинки=Строка(""+PSМодуль.ПолучитьПутьДоБазы()+"\Обработчики\КП\first_page.jpg");
Строка = ТабДокумент.Область(1,,1,); //Выделяем первую строку целиком
Строка.СоздатьФорматСтрок(); //создаем для первой строки отдельный формат, чтобы изменение ширины ячейки не влияло на последующие строки
Ячейка=ТабДокумент.Область(1,1,1,1);
Ячейка.ВысотаСтроки=842;
Ячейка.ШиринаКолонки=114;
Ячейка.Картинка=Новый Картинка(ПутьДоКартинки,Ложь);
ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
ПоказатьСоздание формата строк
Для того чтобы создать новый формат строк (сделать у некоторых строк собственную ширину колонок), достаточно выделить строки, у которых необходимо изменить ширину колонки, и при помощи мыши изменить размер любой колонки. После изменения размера будет выдан запрос на создание нового формата строк. В случае подтверждения создания нового формата строк, для выделенных строк будет создан новый формат, и в дальнейшем, при изменении размеров колонок в данных строках, будут изменяться размеры колонок только в данных строках, остальные строки при этом затрагиваться не будут.
Для программной установки формата строк для определенной области табличного документа, следует воспользоваться методом СоздатьФорматСтрок(). После вызова метода строки, которые входили в область, для которой вызывался метод, будут иметь новый формат строк.
Для того чтобы создать новый формат строк (сделать у некоторых строк собственную ширину колонок), достаточно выделить строки, у которых необходимо изменить ширину колонки, и при помощи мыши изменить размер любой колонки. После изменения размера будет выдан запрос на создание нового формата строк. В случае подтверждения создания нового формата строк, для выделенных строк будет создан новый формат, и в дальнейшем, при изменении размеров колонок в данных строках, будут изменяться размеры колонок только в данных строках, остальные строки при этом затрагиваться не будут.
Для программной установки формата строк для определенной области табличного документа, следует воспользоваться методом СоздатьФорматСтрок(). После вызова метода строки, которые входили в область, для которой вызывался метод, будут иметь новый формат строк.
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Как вариант:
1.Сделать область из одной ячейки (Ширина 114, Высота 842)
2. Установить картинку в качестве фона этой ячейки
3. Вывести область картинки
4. Вывести последующие области
Минус такого решения в том, что весь документ в итоге будет без полей, но конечно можно решить на уровне макета.
1.Сделать область из одной ячейки (Ширина 114, Высота 842)
2. Установить картинку в качестве фона этой ячейки
3. Вывести область картинки
4. Вывести последующие области
Минус такого решения в том, что весь документ в итоге будет без полей, но конечно можно решить на уровне макета.
Прикрепленные файлы:
(2) Спасибо.
Несколько дезинформировал, я пытаюсь с макетом это сделать.
Ваше решение подошло.
Несколько дезинформировал, я пытаюсь с макетом это сделать.
Ваше решение подошло.
Код |
---|
ТабДокумент=ЭлементыФормы.ПолеТабличногоДокумента;
ТабДокумент.Очистить();
ТабДокумент.ВерхнийКолонтитул.Выводить=Ложь;
ТабДокумент.НижнийКолонтитул.Выводить=Ложь;
ТабДокумент.ОтображатьСетку=Истина;
ТабДокумент.ОтображатьЗаголовки = Истина;
ТабДокумент.ПолеСверху=0;
ТабДокумент.ПолеСнизу=0;
ТабДокумент.ПолеСлева=0;
ТабДокумент.ПолеСправа=0;
ТабДокумент.ОтображатьГруппировки=Ложь;
ТабДокумент.АвтоМасштаб=Ложь;
ТабДокумент.МасштабПечати=100;
ПутьДоКартинки=Строка(""+PSМодуль.ПолучитьПутьДоБазы()+"\Обработчики\КП\first_page.jpg");
Ячейка=ТабДокумент.Область(1,1,1,1);
Ячейка.ВысотаСтроки=842;
Ячейка.ШиринаКолонки=114;
Ячейка.Картинка=Новый Картинка(ПутьДоКартинки,Ложь);
ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
Показать |
(2)А есть еще варианты?
До сих пор бьюсь, в этом варианте ячейка 2,1,2,1 получает такую же ширину, соответственно табличный макет ниже улетает в тар-тар-ра-ры.
Если мы объединяем 12 колонок (грубо ширина макета 12 колонок), то проблема возвращается.
Я пока вижу один вариант - разными табличными документами выводить первую и остальные страницы, создать документ WORD и его сохранить в PDF.
Но мне кажется, что это уже извращение.
Можно как-нибудь два табличных документа сохранить в 1 PDF документ?
До сих пор бьюсь, в этом варианте ячейка 2,1,2,1 получает такую же ширину, соответственно табличный макет ниже улетает в тар-тар-ра-ры.
Если мы объединяем 12 колонок (грубо ширина макета 12 колонок), то проблема возвращается.
Я пока вижу один вариант - разными табличными документами выводить первую и остальные страницы, создать документ WORD и его сохранить в PDF.
Но мне кажется, что это уже извращение.
Можно как-нибудь два табличных документа сохранить в 1 PDF документ?
(4). Платформы под рукой сейчас не имею, да и сам я в легком подпитии (В Хабаровске уже глубокий вечер пятницы).
Но я бы рекомедовал попробовать вот так:
Но я бы рекомедовал попробовать вот так:
ТабДокумент=ЭлементыФормы.ПолеТабличногоДокумента;
ТабДокумент.Очистить();
ТабДокумент.ВерхнийКолонтитул.Выводить=Ложь;
ТабДокумент.НижнийКолонтитул.Выводить=Ложь;
ТабДокумент.ОтображатьСетку=Истина;
ТабДокумент.ОтображатьЗаголовки = Истина;
ТабДокумент.ПолеСверху=0;
ТабДокумент.ПолеСнизу=0;
ТабДокумент.ПолеСлева=0;
ТабДокумент.ПолеСправа=0;
ТабДокумент.ОтображатьГруппировки=Ложь;
ТабДокумент.АвтоМасштаб=Ложь;
ТабДокумент.МасштабПечати=100;
ПутьДоКартинки=Строка(""+PSМодуль.ПолучитьПутьДоБазы()+"\Обработчики\КП\first_page.jpg");
Строка = ТабДокумент.Область(1,,1,); //Выделяем первую строку целиком
Строка.СоздатьФорматСтрок(); //создаем для первой строки отдельный формат, чтобы изменение ширины ячейки не влияло на последующие строки
Ячейка=ТабДокумент.Область(1,1,1,1);
Ячейка.ВысотаСтроки=842;
Ячейка.ШиринаКолонки=114;
Ячейка.Картинка=Новый Картинка(ПутьДоКартинки,Ложь);
ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
ПоказатьСоздание формата строк
Для того чтобы создать новый формат строк (сделать у некоторых строк собственную ширину колонок), достаточно выделить строки, у которых необходимо изменить ширину колонки, и при помощи мыши изменить размер любой колонки. После изменения размера будет выдан запрос на создание нового формата строк. В случае подтверждения создания нового формата строк, для выделенных строк будет создан новый формат, и в дальнейшем, при изменении размеров колонок в данных строках, будут изменяться размеры колонок только в данных строках, остальные строки при этом затрагиваться не будут.
Для программной установки формата строк для определенной области табличного документа, следует воспользоваться методом СоздатьФорматСтрок(). После вызова метода строки, которые входили в область, для которой вызывался метод, будут иметь новый формат строк.
Для того чтобы создать новый формат строк (сделать у некоторых строк собственную ширину колонок), достаточно выделить строки, у которых необходимо изменить ширину колонки, и при помощи мыши изменить размер любой колонки. После изменения размера будет выдан запрос на создание нового формата строк. В случае подтверждения создания нового формата строк, для выделенных строк будет создан новый формат, и в дальнейшем, при изменении размеров колонок в данных строках, будут изменяться размеры колонок только в данных строках, остальные строки при этом затрагиваться не будут.
Для программной установки формата строк для определенной области табличного документа, следует воспользоваться методом СоздатьФорматСтрок(). После вызова метода строки, которые входили в область, для которой вызывался метод, будут иметь новый формат строк.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот