1с изменить размер картинки программно
подскажите, кто знает, не сочните за труд :-) можно ли изменить программно размеры картинки в таблице?
Задача крайне проста — в нашем распоряжении имеется энное количество изображений (растровых или векторных, не суть важно), и мы хотим “на лету” вставить в табличный документ одно из этих изображений. Само собой, изображения хранятся в виде отдельных файлов соответствующих форматов, а имя нужного файла станет известно только в самый последний момент. Что делать? Можно потратить некоторое количество времени на борьбу со встроенным объектом “Картинка” и даже, чем черт не шутит, добиться какого-то положительного результата. Но можно и не добиться. Во всяком случае, я не добился. Можно и по-другому. В глобальном модуле пишем функцию: В шаблоне таблицы организуем “посадочное место” для картинки (это делается так: F10-Таблица-Вставить рисунок-Картинка-растянуть до нужного размера-Отмена). В свойствах полученного объекта прописываем вызов своей функции (предполагается, что Таб — это имя таблицы, а Путь — переменная процедуры печати): Рисунок(Таб.ТекущийОбъект,Путь); После всего этого в процедуре печати остается определить, какой графический файл нам нужен: Готово дело, картинка печатается. Единственное, чего еще не хватает — программного управления размерами картинки, но тут уж ничего не поделать. Все-таки 1С — это бухгалтерский софт, а не Photoshop. ;-) а дальше как сказал
Задача: надо распечатать обыкновенную накладную, но чтобы наискосок номенклатуры (повыерх ее) шла надпись (рисунок). Что уже получилось: Картинку делаю маленькую в ячейке шапки таблички, если больше то при выводе секциями, она не отображается, потом интерактивно при просмотре можно ее, картинку, растянуть, а теперь вопрос: как этого добиться программно?
toИзвините, по вашему запросу ничего не найдено. Уточните запрос и попробуйте воспользоваться поиском еще раз.
to тогда ее создать надо и установить положение и размер, а как? возможно, глупый вопрос, но я не знаю как :-(
Это опять я :-) Zl, не подскажешь как из 1С обратиться к _разрешению_ принтера на каком печатать? При разных разрешениях по-разному печатается картинка, поле DstHeight < -1, при -1 было бы все ок, если бы можно было менять размер ОЛЕ-контейнера :-(
to(Черт) Извини, что как бы проигнорировал - просто это очевидно, а нужно именно _программное_ управление размерами картинки, с bmp_1C вроде можно сделать, вот только от принтера зависит много, а как к его свойствам добраться не нашел еще
Используя код данной обработки, можно создавать файлы предпросмотра изображений для HTML документов.
Специальные предложения
Обработка не предназначена для изменения размеров изображений в файлах . Она только показывает картинку в другом размере.
Да, но при этом можно сохранить данную картинку в файл в другом размере. (сохранить новую картинку программно труда не составит).
Просмотры 7847
Загрузки 28
Рейтинг 9
Создание 23.11.16 16:43
Обновление 23.11.16 16:43
№ Публикации 563496
Кому Для всех
Конфигурация Конфигурации 1cv8
Операционная система Windows
Страна Россия
Вид учета Не имеет значения
Доступ к файлу Абонемент ($m)
Код открыт Не указано
См. также
Групповая корректировка записей регистров (Управляемое приложение) v 2.2 Промо
Обработка предназначена для групповой корректировки записей регистров Накопления, Сведений и Бухгалтерии. Разработана специально для Управляемого приложения.
2 стартмани
06.09.2013 72933 382 kser87 69
Предпросмотр PDF, JPG, PNG, TIFF, Word, Excel
Предварительный просмотр присоединенных файлов PDF, JPG, PNG, TIFF, Word, Excel через расширение. Позволяет изменять масштаб, поворачивать и листать. Не требует подключения к интернету и внешних компонент.
2 стартмани
01.11.2021 4509 50 TyurinArt 23
Управление платформенными обработками (расширение для типовых) [update 8.3.20]
Расширение использует недокументированную возможность для управления платформенными обработками. Например, чтобы подменить "Активные пользователи" или доработать "Конструктор запросов".
1 стартмани
07.10.2021 6018 10 SeiOkami 24
Универсальная обработка переноса данных из основной конфигурации в расширение
Обработка предназначена для разработчиков, для тех случаев, когда ранее дописанный функционал, перенесен в расширение и появляется необходимость перенести данные из объектов основной конфигурации в объекты расширения. Перенос осуществляется настройкой соответствия объектов основной конфигурации объектам расширения.
5 стартмани
05.10.2020 13342 81 biz-intel 71
Универсальная выгрузка/загрузка данных для отличающихся конфигураций (JSON, Такси+ОФ) Промо
Простой перенос через JSON данных между двумя базами 1С (документов, справочников, ПВХ, ПВР, счетов). Аналогична произвольной выгрузке в типовой "Выгрузка/загрузка XML", но может использоваться для отличающихся конфигураций. Подходит для любых пар баз с любым интерфейсом (управляемый + обычный). Без настроек. Не требует идентичности конфигураций и платформ. При переносе типы данных сопоставляются по наименованиям метаданных, объекты и ссылки по UID.
1 стартмани
22.10.2014 230907 4478 ekaruk 189
Улучшенная обработка универсального обмена данными в формате XML (УФ)
Улучшенная обработка "Универсальный обмен данными" с полноценными возможностями СКД для выборки данных (не только для отборов).
1 стартмани
23.06.2020 16078 170 Lem0n 1
Панель команд текущего объекта (документа, справочника и т.д.) со следующим возможностями: Редактор реквизитов, таблиц и движений текущего объекта, Анализ прав доступа к текущему объекту, Поиск ссылок на объект с отборами, Сторно движений документа, Выгрузка/загрузка текущего объекта между базами. Реализована всплывающей панелью в форме объекта. Подключается как расширение конфигурации (*.cfe) либо отдельными обработками.
2 стартмани
01.05.2020 17766 118 sapervodichka 3
Яндекс сервисы [Расширение]
Расширение для работы с Яндекс-сервисами (предиктор,переводчик,проверка орфографии)
1 стартмани
24.10.2019 17968 11 noprogrammer 12
Обработка "Распознавание штрихкода с помощью утилиты Zbar" для Документооборот ред. 2 Промо
В связи с тем, что стандартный функционал программы «Документооборот» ред. 2.1 дает возможность распознавания штрихкодов только форма EAN-13, данная обработка - альтернативный способ для распознавания штрихкода в программе 1С: Документооборот ред. 2 с помощью утилиты Zbar, которая распознает в том числе и в формате Code 128 (один из стандартных штрихкодов кодирования документов, например, «Управление торговлей» ред. 11), а также с возможностью поэтапно проследить все действия от распознавания до прикрепления к документу или простой загрузки в каталоги файлов в базе 1С.
5 стартмани
05.09.2016 30454 187 SEOAngels 11
Работа с файлами (обычная и управляемая форма)
Нужно загрузить файл с клиента на сервер или же, наоборот, файл загрузить с сервера на клиент, а впридачу все это на web-клиенте, да еще и асинхронно? Нет ничего проще, читай далее, как это сделать!
1 стартмани
10.06.2019 48316 261 Xershi 78
Электронная таблица средствами 1С (Версия 2.0)
Функционал электронной таблицы для программ на платформе 1С реализован на основе табличных документов. Функционал реализован в виде обработки. Большую часть формы обработки занимают листы (закладки) с табличными документами, которые выполняет роль электронной таблицы. Листы могут быть добавлены, удалены или переименованы. Ограничение по количеству листов определяется возможностью платформы. В формулах электронной таблицы можно использовать любые языковые конструкции, процедуры и функции 1С, ссылки на другие ячейки электронной таблицы расположенные в том числе и на других листах. Допустимо обращаться к ячейкам электронной таблицы по имени именованной области. В случае использования в формулах электронной таблицы данных из самой таблицы пересчет зависимых ячеек с формулами производится автоматически. Электронную таблицу можно сохранить в файл.
Иногда возникает необходимость обработать фотографии в 1С автоматически, уменьшить вес картинок в килобайтах, за счет удаления из файла не нужной технической информации и сглаживания цветов, или изменить размер, уменьшить картинку пропорционально задав максимальный размер по ширине или высоте.В этом случае можно:1) установить специальные библиотеки в операционной системе для работы с графикой, н-р GFLAx и подключать их как com-объекты2) использовать api сервисов, таких как optipic.io.
Далее её надо зарегистрировать в Windows. Для этого запускаем CMD.exe с правами администратора и набираем: regsrv32 "путь_к_DLL\GFLAx.dll"Далее уже в программе, для пропорционального изменения размера файла до максимального размера в 500 пикселей можно вставить такой код:
Данный способ требует специальных настроек операционной системы, навыков системного администрирования и данный способ не проводит полноценную оптимизацию картинки.Кроме того, на компьютере или сервере, где производиться оптимизация эта библиотека должна быть установлена.2) Использование сервиса optipic.ioПодобные сервисы обычно платные, но стоимость использования не высокая, а качество и гибкость существенно выше.
Преимущества использования сервиса optipic.io в проектах 1С:
- Легко подключить
- Не нужно устанавливать дополнительные библиотеки в операционной системе
- Можно использовать как для оптимизации изображений, так и для изменения размера изображения в пикселях (ресайз)
- Не зависит от операционной системы и типа используемого клиента
- Конфигурация будет работать после переезда на другой компьютер или сервер
- Качество и эффективность сжатия производятся в самом оптимальном виде
Использование сервиса можно легко встроить в любой свой проект на 1С. Для этого можно добавить себе функцию, в которую передавать имя файла с исходной картинкой и параметры оптимизации. А в качестве ответа получить имя файла уже оптимизированного сервисом.
Пример такой функции для 1C8:
Похожие FAQ
Еще в этой же категории
Пишу дипломный проект, можете подсказать как можно сделать диаграмму в инете нашел но так и не понял 4
в таблице указано дата и показатель нужно построить обычную гистограмму Автоматическое резервное копирование 1С:Предприятия в облако с помощью ПО Effector Saver 3
Всем известно, для большей гарантии восстановления важных данных, необходимо копировать архивы в несколько мест хранения. Отдельный диск может помочь в случае порчи основного, но в случае если устройство будет потеряно или украдено, он будет так же Условное форматирование в СКД 0
Вывожу отчет в СКД, вывожу в столбец Ресурс. Делаю для этого ресурса условное форматирование(меняю цвет заливки). В отчет 3 группировки, для нижних группировок делается отлично, если все закрашены, закрашивается группировка. Но для верхней не срабаты Как заполнить регистр накопления из регистров документа 0
У меня есть регистр накопления и документ задачи. В регистре есть реквизит "автор" ссылка на "автор" в документе задача. Сделал движение указав Движение.Автор = Автор; Когда добавляю автора в документ, провожу его, то а регистре накопления пустое п Посмотреть все в категории 1С ERP Управление предприятием 2.0
Используя код данной обработки, можно создавать файлы предпросмотра изображений для HTML документов.
Специальные предложения
Обработка не предназначена для изменения размеров изображений в файлах . Она только показывает картинку в другом размере.
Да, но при этом можно сохранить данную картинку в файл в другом размере. (сохранить новую картинку программно труда не составит).
Просмотры 7847
Загрузки 28
Рейтинг 9
Создание 23.11.16 16:43
Обновление 23.11.16 16:43
№ Публикации 563496
Кому Для всех
Конфигурация Конфигурации 1cv8
Операционная система Windows
Страна Россия
Вид учета Не имеет значения
Доступ к файлу Абонемент ($m)
Код открыт Не указано
См. также
Групповая корректировка записей регистров (Управляемое приложение) v 2.2 Промо
Обработка предназначена для групповой корректировки записей регистров Накопления, Сведений и Бухгалтерии. Разработана специально для Управляемого приложения.
2 стартмани
06.09.2013 72933 382 kser87 69
Предпросмотр PDF, JPG, PNG, TIFF, Word, Excel
Предварительный просмотр присоединенных файлов PDF, JPG, PNG, TIFF, Word, Excel через расширение. Позволяет изменять масштаб, поворачивать и листать. Не требует подключения к интернету и внешних компонент.
2 стартмани
01.11.2021 4509 50 TyurinArt 23
Управление платформенными обработками (расширение для типовых) [update 8.3.20]
Расширение использует недокументированную возможность для управления платформенными обработками. Например, чтобы подменить "Активные пользователи" или доработать "Конструктор запросов".
1 стартмани
07.10.2021 6018 10 SeiOkami 24
Универсальная обработка переноса данных из основной конфигурации в расширение
Обработка предназначена для разработчиков, для тех случаев, когда ранее дописанный функционал, перенесен в расширение и появляется необходимость перенести данные из объектов основной конфигурации в объекты расширения. Перенос осуществляется настройкой соответствия объектов основной конфигурации объектам расширения.
5 стартмани
05.10.2020 13342 81 biz-intel 71
Универсальная выгрузка/загрузка данных для отличающихся конфигураций (JSON, Такси+ОФ) Промо
Простой перенос через JSON данных между двумя базами 1С (документов, справочников, ПВХ, ПВР, счетов). Аналогична произвольной выгрузке в типовой "Выгрузка/загрузка XML", но может использоваться для отличающихся конфигураций. Подходит для любых пар баз с любым интерфейсом (управляемый + обычный). Без настроек. Не требует идентичности конфигураций и платформ. При переносе типы данных сопоставляются по наименованиям метаданных, объекты и ссылки по UID.
1 стартмани
22.10.2014 230907 4478 ekaruk 189
Улучшенная обработка универсального обмена данными в формате XML (УФ)
Улучшенная обработка "Универсальный обмен данными" с полноценными возможностями СКД для выборки данных (не только для отборов).
1 стартмани
23.06.2020 16078 170 Lem0n 1
Панель команд текущего объекта (документа, справочника и т.д.) со следующим возможностями: Редактор реквизитов, таблиц и движений текущего объекта, Анализ прав доступа к текущему объекту, Поиск ссылок на объект с отборами, Сторно движений документа, Выгрузка/загрузка текущего объекта между базами. Реализована всплывающей панелью в форме объекта. Подключается как расширение конфигурации (*.cfe) либо отдельными обработками.
2 стартмани
01.05.2020 17766 118 sapervodichka 3
Яндекс сервисы [Расширение]
Расширение для работы с Яндекс-сервисами (предиктор,переводчик,проверка орфографии)
1 стартмани
24.10.2019 17968 11 noprogrammer 12
Обработка "Распознавание штрихкода с помощью утилиты Zbar" для Документооборот ред. 2 Промо
В связи с тем, что стандартный функционал программы «Документооборот» ред. 2.1 дает возможность распознавания штрихкодов только форма EAN-13, данная обработка - альтернативный способ для распознавания штрихкода в программе 1С: Документооборот ред. 2 с помощью утилиты Zbar, которая распознает в том числе и в формате Code 128 (один из стандартных штрихкодов кодирования документов, например, «Управление торговлей» ред. 11), а также с возможностью поэтапно проследить все действия от распознавания до прикрепления к документу или простой загрузки в каталоги файлов в базе 1С.
5 стартмани
05.09.2016 30454 187 SEOAngels 11
Работа с файлами (обычная и управляемая форма)
Нужно загрузить файл с клиента на сервер или же, наоборот, файл загрузить с сервера на клиент, а впридачу все это на web-клиенте, да еще и асинхронно? Нет ничего проще, читай далее, как это сделать!
1 стартмани
10.06.2019 48316 261 Xershi 78
Электронная таблица средствами 1С (Версия 2.0)
Функционал электронной таблицы для программ на платформе 1С реализован на основе табличных документов. Функционал реализован в виде обработки. Большую часть формы обработки занимают листы (закладки) с табличными документами, которые выполняет роль электронной таблицы. Листы могут быть добавлены, удалены или переименованы. Ограничение по количеству листов определяется возможностью платформы. В формулах электронной таблицы можно использовать любые языковые конструкции, процедуры и функции 1С, ссылки на другие ячейки электронной таблицы расположенные в том числе и на других листах. Допустимо обращаться к ячейкам электронной таблицы по имени именованной области. В случае использования в формулах электронной таблицы данных из самой таблицы пересчет зависимых ячеек с формулами производится автоматически. Электронную таблицу можно сохранить в файл.
Даже не знаю, насколько это актуально и востребовано.
Но, на всякий случай, для потомков.
Итак, внешний вид обработки:
В каталоге с внешней обработкой лежит файл картинки 2.jpg размер 763 кб. (можете заменить на свой)
Нужно его, например, добавить в прайс-лист.
4 варианта - решения данного вопроса.
- 1 Вариант - штатное сохранение макета табличного документа в xls 192 кб.
- 2 Вариант - штатное сохранение макета табличного документа в xlsx 173 кб.
- 3 Вариант - штатный способ, но с хитрой подменой 27 кб.
(при проведении лабораторных испытаний выяснилось, что файл формата *jpg 1С при сохранении в формат EXCEL для чего-то переконвертирует в формат png - неплохо, при таком подходе страдает качество картинки). - И вот вчера вечером в голову пришел 4 вариант. пока это тайна (для вас бесплатно).
Для работы 4 варианта на данном этапе необходим установленный Microsoft Office Excel.
Интересно было бы услышать ваши предложения и комментарии (как еще лучше получить более сжатый файл).
На картинке показан результат от 192 кб (штатный способ) до 23 кб (можно и меньше, но уже начинает страдать качество)
Можно сделать экспортной функцией и сжимать файлы перед печатью;
Можно сжимать файлы (внешние или из хранилища) и сохранять отдельно;
Готовить например картинки по одному формату (размер, разрешение, объем);
и многое-многое другое.
Будут вопросы, пишите - всегда Ваш Tatitutu (c)
В архиве NOSIZE.zip - папка ПРИМЕР, в ней УмнаяКартинка.epf (сама обработка) и файл картинки для примера.
Запустите обработку: по очереди 4 варианта - оцените полученный результат.
Специальные предложения
Подсказка про Вариант3 (для тех кто не хочет лишний раз качать )
суть идеи ( может баян или велосипед ) можно меня ткнуть носом (правда это хлопотно)
При выводе на печать картинки есть строго заданный макет печатной форму и объекта картинка
пусть наша картинка будет размером 5 на 4 см.
Картинки могут храниться как на внешнем носители так и базе (хранилище) - но не всегда картинки "хорошего" размера
(был случай клиент купил новый фотоаппарат и добавлял в базу картинки весом около 20 мб - потом спрашивал что у меня за тормоза - смешной)
Платформа 1С 8 очень не плохо по сравнению с 7.7 версией научилась автоматически при сохранении сжимать картинки (зависит от формата EXCEL)
но все же иногда хочеться побольше да посильнее "сжать" выходной файл.
Для этого нам понадобиться дополнительный макет с объектом картинка - но меньшего размера например 2,5 на 2 см (-50%)
Далее
- создаем Табличную форму с одной маленькой картинкой
- сохраняем файл
- извлекаем нашу картинку
- подставляем ее вместо ПЕРВОЙ изначальной картинки в нужный например ПРАЙС- ЛИСТ (вместо файл 20 мб получить 2 мб - я думаю это очень не плохо)
Продолжение следуют. (про Вариант4 )
Столько народу спрашивало, спрашивало - все времени не было выложить. Выложил и не кому не нужно )))
Ну ничего не меняется. Нужно было назвать "Неуловимая обработка" - Почему неуловимая ? - да никому потому что не нужна :)
Читайте также: