Имя: Пароль:
1C
 
Картинка в табличном документе
0 evg61
 
10.06.19
09:48
Уважаемые коллеги!
Прошу помощи с проблемой изложенной в теме сообщения.
Комментарии по этой теме есть и проблему отчасти решил. Но не получается сделать красиво.
То есть что бы картинка заполняла полностью в отведённую для неё область макета или что бы поле под картинку создавалась с большими размерами.
Это возможно? Если да, то как?
И как правильно спроектировать макет? Может ли отведённая область содержать несколько объединённых ячеек или это должна быть одна единственная?
Спасибо!
1 evg61
 
10.06.19
10:16
Коллеги, неужели никто не сталкивался в подобной проблемой?
2 RomaH
 
naïve
10.06.19
10:22
с какой?
3 evg61
 
10.06.19
10:23
Ну вот же , изложил... неужели не появился вопрос?

Уважаемые коллеги!
Прошу помощи с проблемой изложенной в теме сообщения.
Комментарии по этой теме есть и проблему отчасти решил. Но не получается сделать красиво.
То есть что бы картинка заполняла полностью в отведённую для неё область макета или что бы поле под картинку создавалась с большими размерами.
Это возможно? Если да, то как?
И как правильно спроектировать макет? Может ли отведённая область содержать несколько объединённых ячеек или это должна быть одна единственная?
Спасибо!
4 RomanYS
 
10.06.19
10:23
Проблема то где? В теме проблемы нет.

Без кода картинка может масштабироваться внутри рисунка (объект на ТД) фиксированных размеров.
Кодом можно менять как размер рисунка так и размер области.

>>Может ли отведённая область содержать несколько объединённых ячеек или это должна быть одна единственная?
Может
5 evg61
 
10.06.19
10:24
Спасибо за отклик!)))))))))))))
6 evg61
 
10.06.19
10:26
Размер картинки поменять не проблема, проблема вписать картинку в отведённую область... Как корректно это сделать? Как установить размеры области?
7 evg61
 
10.06.19
10:28
На данный момент получается что картинка сама по себе, область сама по себе. Совпадает только левый верхний угол... Как бы так я это описал...
8 evg61
 
10.06.19
10:36
Код использую такой:

    ДокументРезультат.Вывести(ОбластьСтрока); // вывожу данные строки и дальше присоединяю картинку

    Рис = ОбластьЧертёж1.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
    Рис.Высота=20;
    Рис.Ширина=60;
    Рис.РазмерКартинки = РазмерКартинки.РеальныйРазмер;
    Рис.Картинка = СтрокаТЧ.Чертёж1.Чертёж.Получить();
    ДокументРезультат.Присоединить(ОбластьЧертёж1);

В результате картинка выступает за пределы строки... Хотелось бы что бы строка и картинка по высоте совпадали. Но фиксированными размерами подобрать такой результат проблематично, потому что высота самой строки может меняться в зависимости от данных, отображаемых в ней...
9 RomanYS
 
10.06.19
10:37
У области есть ширина и высота, которые можно менять. Проблема в пересчете размера?
Автовысота не работает?
10 RomanYS
 
10.06.19
10:39
Рис.Высота=20;
    Рис.Ширина=60;
    Рис.РазмерКартинки = РазмерКартинки.РеальныйРазмер;

А если реальный размер не влазит в такие размеры? Или размер известен заранее?
11 RomanYS
 
10.06.19
10:41
(8) С Присоединить тоже нюанс может быть: возможно высота присоединенных строк будет подгоняться к высоте же выведенных. Т.е. изменение высоты куска макета может не работать, придется менять высоту уже выведенной строки в ДокументРезультат
12 evg61
 
10.06.19
10:42
Роман, спасибо!
Размер картинок можно будет делать одинаковым.
Насчёт автовысоты сейчас проверю...
13 evg61
 
10.06.19
10:43
Похоже, так всё и получится... Это первый опыт с картинками в ТД. В самом документе всё работает...
14 evg61
 
10.06.19
10:44
>С Присоединить тоже нюанс может быть: возможно высота присоединенных строк будет подгоняться к высоте же выведенных. Т.е. изменение высоты куска макета может не работать, придется менять высоту уже выведенной строки в ДокументРезультат

А как это делается? сам принцип можно изложить? Идея понятна, но как осуществить пока не понял..
15 hhhh
 
10.06.19
10:53
(14) он имеет ввиду, например, картинка занимает половину страницы, а в другой колонке текст, например, занимает три страницы. Тогда вы по-любому не заполните картинкой всю область, внизу останется пустое место.
16 mistеr
 
10.06.19
11:11
(6) Метод рисунка Расположить(). Но пропорции изменятся.
17 mistеr
 
10.06.19
11:12
(3) На будущее. Делай две картинки: "как есть" и "как хочется".
18 evg61
 
10.06.19
11:25
Всем спасибо! кое что получилось. Если на макете размещаю картинку, то высоту и ширину можно не указывать.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший