Имя: Пароль:
1C
1С v8
Помогите напечатать картинки. Проблемы с картинками в 8.2
0 bz79
 
25.09.11
13:17
После перевода базы с 8.1 на 8.2 перестали отображаться картинки как на форме так и в табличном документе.
Отчет должен печатать сопроводительные документы.
Много сканированных фоток, которые хранятся в базе.
Был на написан 8.1  и сконвертирован под 8.2 который.
На форме есть картинка и кнопки навигации.

на навиганции осуществляется след кодом, который отлично работал на 8.1. На 8.2 после просмотра 30шт. картинки перестают отображаться.. потом снова появляются и т.д. Притом обратная навигация также может не показыватся изображения, которые до этого были. Иногда картинки появляются если форму подергать.
Если наживаем "Сохранить" на "пустой картинке", то все отлично сохраняется в файл.

Если все изображения вывести в табличный документ, то изображения показываются хаотически.
Заранее спасибо.


ЭтаФорма.ЭлементыФормы.КартинкаПоля.Видимость = Истина;
ЭтаФорма.ЭлементыФормы.КартинкаПоля.ПрозрачныйФон = Ложь;
Картинка = КоллекцияСканированныхДокументов.Получить(ТекущийНомерКартинки);
ЭтаФорма.ЭлементыФормы.КартинкаПоля.Картинка = Новый Картинка;
ЭтаФорма.ЭлементыФормы.КартинкаПоля.Картинка = Картинка;
1 Юрий Лазаренко
 
25.09.11
21:14
(0) Релиз какой? Как было сконвертировано: просто перевели в толстый клиент или переписали на УФ?
2 bz79
 
25.09.11
21:54
2:(1)
1С:Предприятие 8.2 (8.2.14.533). Сейчас проверил на 8.2.13 аналогично...
Просто под Толстым клиентом.
У конфигурации установлено совместимость с 8.2.13.
Возможно у 1с в 8.2 ужесточились требования к формату картинок?.
Для тестирования переписал код сохраняю картинки в файл, а при перелистывании читаю с диска - результат аналогичен.

Заполнение массива                
в цикле заполняю массив содержащий имена файлов
ПолноеИмяФайла = ПолучитьИмяВременногоФайла();
Картинка.Записать(ПолноеИмяФайла);
МассивКартинок.Добавить(ПолноеИмяФайла);

для навигации след код...

ЭтаФорма.ЭлементыФормы.КартинкаПоля.Картинка = Новый Картинка;

ПолноеИмяФайла = МассивКартинок.Получить(ТекущийНомерКартинки);
Картинка = Новый Картинка(ПолноеИмяФайла);
ЭтаФорма.ЭлементыФормы.КартинкаПоля.Картинка = Картинка;
3 Юрий Лазаренко
 
25.09.11
22:06
"Иногда картинки появляются если форму подергать" - похоже что-то с отображением. Размеры (в пикселах) у картинок одинаковые? Может просто форму колбасит из-за разных размеров?
4 bz79
 
25.09.11
22:56
Скажем, если сохранить файл, т.е. открывается модальное окно сохранеие, то иного после закрытия оного. картинка или часть отображается. У картинки установлено

   ЭлементыФормы.КартинкаПоля.РазмерКартинки = РазмерКартинки.АвтоРазмер;

Все это странным образом повторяется если кучу картинок выводить в табличный документ.
Под платформой 8.1 все работало..
5 Юрий Лазаренко
 
25.09.11
23:03
(4) Уточни: картинка прямо на форме расположена или на поле табличного документа? Может есть смысл типовые посмотреть, там есть отображение картинки в справочнике номенклатуры, проверь, будет обновляться картинка при выборе номенклатуры в списке справочника. Если будет - то сдери код оттудова.
6 bz79
 
26.09.11
22:21
И на форме "картинка" и при выводе в табличный документ временами оказываются пустые картинки.

Сделал промежуточную конвертацию картинок перед выводом на  через
ЗапуститьПриложение().
Причина понятна -1с в движке 8.2 исправила работу с картинками.
То что отлично в 8.1 работало. теперь только со своей спецификой.
Сканированные изображения получаются через утилиру по работе со сканером hp.
Программист всегда исправляет последнюю ошибку.