И снова "Как сжать картинки для экспорта в EXCEL?" или Умная картинка 8.2

Опубликовал Юрий Тимофеев (Tatitutu) в раздел Программирование - Практика программирования

Прошла уже эпоха , когда экономили на трафике интернета.
Но все же...повторюсь.
Я предлагаю  совершенно новый способ сжатия картинки - эффект в 20 раз !!!

Даже не знаю, насколько это актуально и востребовано....

Но, на всякий случай, для потомков.

Итак, внешний вид обработки:

 

 

В каталоге с внешней обработкой лежит файл картинки 2.jpg размер 763 кб. (можете заменить на свой)

Нужно его, например, добавить в прайс-лист.

4 варианта - решения данного вопроса.

  • 1 Вариант - штатное сохранение макета табличного документа в xls   192 кб.
  • 2 Вариант - штатное сохранение макета табличного документа в xlsx  173 кб.
  • 3 Вариант - штатный способ, но с хитрой подменой                             27 кб.
    (при проведении лабораторных испытаний выяснилось, что файл формата *jpg 1С при сохранении в формат EXCEL для чего-то переконвертирует в формат png - неплохо, при таком подходе страдает качество картинки).
  • И вот вчера вечером в голову пришел 4 вариант.... пока это тайна (для вас бесплатно).
    Для работы 4 варианта на данном этапе необходим установленный Microsoft Office Excel.

Интересно было бы услышать ваши предложения и комментарии (как еще лучше получить более сжатый файл).

На картинке показан результат от 192 кб (штатный способ) до 23 кб (можно и меньше, но уже начинает страдать качество)

 

 

Можно сделать экспортной функцией и сжимать файлы перед печатью;

Можно сжимать файлы (внешние или из хранилища) и сохранять отдельно;

Готовить например картинки по одному формату (размер, разрешение, объем);

Указывать % сжатия;

и многое-многое другое.

Дополнительный материал:

В 60 !!! раз сжимаем файл MS EXCEL с картинками (созданный программно из 1С) (для 7.7)

Сжать файл EXCEL в 60 раз ! (альтернатива)

Как сохранить все картинки из файла EXCEL(Word)

Как сохранить картинки из КОЛОНТИТУЛА файла EXCEL(Word)

Будут вопросы, пишите - всегда Ваш Tatitutu (c)

 

В архиве NOSIZE.zip - папка ПРИМЕР, в ней УмнаяКартинка.epf (сама обработка) и файл картинки для примера.

Запустите обработку: по очереди 4 варианта - оцените полученный результат.

Скачать файлы

Наименование Файл Версия Размер
NOSIZE.zip
.zip 854,56Kb
17.06.15
31
.zip 1.0.01 854,56Kb 31 Скачать

См. также

Комментарии
1. Юрий Тимофеев (Tatitutu) 3571 17.06.15 10:31 Сейчас в теме
Подсказка про Вариант3 (для тех кто не хочет лишний раз качать )

суть идеи (может баян или велосипед) можно меня ткнуть носом (правда это хлопотно)

При выводе на печать картинки есть строго заданный макет печатной форму и объекта картинка
пусть наша картинка будет размером 5 на 4 см.
Картинки могут храниться как на внешнем носители так и базе (хранилище) - но не всегда картинки "хорошего" размера
(был случай клиент купил новый фотоаппарат и добавлял в базу картинки весом около 20 мб - потом спрашивал что у меня за тормоза - смешной)
Платформа 1С 8 очень не плохо по сравнению с 7.7 версией научилась автоматически при сохранении сжимать картинки (зависит от формата EXCEL)
но все же иногда хочеться побольше да посильнее "сжать" выходной файл.
Для этого нам понадобиться дополнительный макет с объектом картинка - но меньшего размера например 2,5 на 2 см (-50%)
Далее
- создаем Табличную форму с одной маленькой картинкой
- сохраняем файл
- извлекаем нашу картинку
- подставляем ее вместо ПЕРВОЙ изначальной картинки в нужный например ПРАЙС- ЛИСТ (вместо файл 20 мб получить 2 мб - я думаю это очень не плохо)

Продолжение следуют.... (про Вариант4)
navigator-it; +1 Ответить
2. Юрий Тимофеев (Tatitutu) 3571 18.06.15 09:49 Сейчас в теме
Столько народу спрашивало, спрашивало - все времени не было выложить. Выложил и не кому не нужно )))
Ну ничего не меняется. Нужно было назвать "Неуловимая обработка" - Почему неуловимая ? - да никому потому что не нужна :)
3. Сергей Рудаков (fishca) 1044 18.06.15 11:22 Сейчас в теме
Возьму на заметку, спасибо!
4. Юрий Тимофеев (Tatitutu) 3571 18.06.15 11:26 Сейчас в теме
(3) fishca, сначала предложи суть Варианта4
5. Сергей Огородников (Serg O.) 132 19.06.15 15:34 Сейчас в теме
я сам тоже "допёр" что xlsx лучше...
у нас прайс-лист с картинками есть... около 300 фото...
xls - делает около 100 Мб
xlsx - делает 17 Мб
так что 2-го варианта обычно достаточно....

3 вариант - очень сильно ухудшает фото (см. 111.jpg)

4 - вообще не работает, выдаёт ошибку

{ВнешняяОбработка.УмнаяКартинка.МодульОбъекта}: Ошибка при вызове конструктора (ЧтениеZipФайла)
по причине:
Некорректный формат файла: C:\Documents and Settings\ogorodnikov\Local Settings\Temp\v8_A676_54.xlsx


Прикрепленные файлы:
6. Юрий Тимофеев (Tatitutu) 3571 19.06.15 15:47 Сейчас в теме
(5) Serg O., Спасибо за отзыв.
3 Вариант - это как идея - там можно "играть" качеством уменьшать/увеличивать подменный макет
4 вариант - у вас выдал ошибку скорее всего файл был отличный от формата jpg
выложу в открытом виде (как наберу 27 звезд :-) там можно изменить на любой формат графического файла или сделать универсальный)
Прикрепи файл (C:\Documents and Settings\ogorodnikov\Local Settings\Temp\v8_A676_54.xlsx)
7. Олег Докукин (osvan) 07.12.16 09:17 Сейчас в теме
Юрий, добрый день! Нужна обработка для сжатия прайса 1С с картинками в EXEL для 1С8. У тебя была подобная для 1С7. Можешь помочь?
8. Юрий Тимофеев (Tatitutu) 3571 07.12.16 10:53 Сейчас в теме
(7) Так это и есть эта обработка (она полностью рабочая)
а теория вот