Имя: Пароль:
1C
 
Выборка данных элементов номенклатуры по которым есть картинки
0 falselight
 
06.07.20
10:29
Управление нашей фирмой, редакция 1.6 (1.6.13.60).

Подскажите пожалуйста, как правильно сделать выборку номенклатуры, у которой загружены картинки?

Сделал такой запрос, выборка есть.

ВЫБРАТЬ
    Номенклатура.Ссылка КАК НоменклатураСсылка,
    Номенклатура.ФайлКартинки КАК ФайлКартинки,
    Номенклатура.ФайлКартинки.Наименование КАК ФайлКартинкиНаименование,
    Номенклатура.ФайлКартинки.ВладелецФайла КАК ФайлКартинкиВладелецФайла
ИЗ
    Справочник.Номенклатура КАК Номенклатура
ГДЕ
    НЕ Номенклатура.ФайлКартинки.Наименование ЕСТЬ NULL
1 Aleksey
 
06.07.20
10:30
А картинка где лежит? Судя по ФайлКартинки.ВладелецФайла - это отдельный справочник, вот по нему и выбирай
2 falselight
 
06.07.20
10:33
Так же вот из другого справочника выбирать можно, -

ВЫБРАТЬ
    НоменклатураПрисоединенныеФайлы.Ссылка КАК Ссылка,
    НоменклатураПрисоединенныеФайлы.Наименование КАК Наименование,
    НоменклатураПрисоединенныеФайлы.ВладелецФайла.Ссылка КАК ВладелецФайлаСсылка,
    НоменклатураПрисоединенныеФайлы.ВладелецФайла.Наименование КАК ВладелецФайлаНаименование,
    НоменклатураПрисоединенныеФайлы.Размер КАК Размер,
    НоменклатураПрисоединенныеФайлы.ПутьКФайлу КАК ПутьКФайлу
ИЗ
    Справочник.НоменклатураПрисоединенныеФайлы КАК НоменклатураПрисоединенныеФайлы


Сама задача в том что бы ограничивать загрузку изображений в номенклатуру до 5 мб.
Пытаюсь вот пока запросами, увидеть то что есть. И если в этом втором запросе открывать НоменклатураПрисоединенныеФайлы.Ссылка КАК Ссылка,

То режим предприятия вылетает. Выходит предварительно сообщение, что нельзя отдельно открывать этот справочник http://joxi.ru/bmo5Q4kU9bzpkA .  


(1) Текущий способ хранения файлов в каталоге на диске http://joxi.ru/bmo5Q4kU9bzpkA  .
3 falselight
 
06.07.20
10:35
В настройках конфигурации УНФ нет же установки ограничения на размер загружаемых файлов?

Буду сейчас смотреть как это можно сделать при загрузке, наверное.
4 Aleksey
 
06.07.20
10:38
"ограничивать загрузку изображений в номенклатуру до 5 мб." - это же типовая фишка БСП, неужели в УНФ ее выкасили?
5 Aleksey
 
06.07.20
10:39
или тебе исключительно в номенклатуру, а в остальные справочники документы пусть хоть видеоролики грузят?
6 falselight
 
06.07.20
10:40
(5) Посмотрел внимательнее сейчас. Оказывается мне нужно изменять размер у существующих фотографий.
Которые загружены в номенклатуру.
7 Aleksey
 
06.07.20
10:43
Проверил - нет не выкосили
Компания->Администрирование->Работа с файлами. Под галкой "хранить файлы в томах на дисках указывам "максимальный размер файлов"

(6) Так если они у тебя на дисках тупо возъми все фотки пожамкай на диске, или там еще что то?
А так НоменклатураПрисоединенныеФайлы.ПутьКФайлу - но там помоему без адреса тома, т.е. еще нужен путь который в томе указан. Ну, если том один, то тупо адрес из него используй как префикс вместе с  ПутьКФайлу и будет тебе адрес.
8 falselight
 
06.07.20
10:45
Как можно искать файл на диске, если там забит такой адрес?


20190624\K8123COL857.jpg

(7) ПутьКФайлу там подобные значения  20190624\K8123COL857.jpg
9 Tatitutu
 
06.07.20
10:46
"Сжиматель" картинок в базе
https://clck.ru/PUV6j
10 Aleksey
 
06.07.20
10:46
(8) см том, там начала адреса
11 falselight
 
06.07.20
10:51
(10) Ок. Вижу что хранится в Том, Там Том1 и открывается Том хранения файлов.

То есть на диске есть подобные каталоги.

Как то можно делать изменение размеров из 1с? Так как нужна обработка .
12 falselight
 
06.07.20
10:52
(9) А если они хранятся в базе и нужно для этого обработку сделать?
13 Aleksey
 
06.07.20
10:55
(11) Вот в настройках том1 есть реквизит путь - это и есть начала адреса
14 falselight
 
06.07.20
10:58
(13) Да я понял. Там разные файлы вижу есть.
И есть файлы, например размер которых 7081608.

Вот подобные мне видимо нужно привести к размеру 4900000.

Обдумываю как это можно сделать в самой обработке.
15 Aleksey
 
06.07.20
11:01
(14) Ну так у тебя в (9) готовое решение. Бери и адаптируй под себя. Смотри как там жамкают и делай по аналогии
16 falselight
 
06.07.20
11:18
(15) Есть примеры работы с изображениями на других источниках.

Эта же продается. И код там закрытый будет. да и покупать мне не нужно, а нужно самому сделать.

Говорят нужна библиотека http://vbnet.mvps.org/files/updates/wiaautsdk.zip

скачал, но как её регистрировать не знаю. Права на это нужны.
17 Aleksey
 
06.07.20
11:24
(16) В (9) автор можешь у него спросить код открыт или нет, а не гадать
18 falselight
 
06.07.20
11:24
Поискал, способы есть разные. Мне это не известно все. Какой лучше и какой правильнее работает.
19 falselight
 
06.07.20
11:25
(17) Я не собираюсь ничего покупать.
Мне нужно сделать самому обработку для изменения размера картинок.
Которые сейчас хранятся на диске.
20 falselight
 
06.07.20
11:54
Кто либо делал подобное?

Например можно использовать из кода программу IrfanView .

Еще есть несколько разных вариантов. То есть из 1с выборка картинок, у которых размер более 5000000 байт, то есть больше 5 Мб.

Далее нужно использовать метод изменения размера на 4900000 байт к примеру, на 4,9 Мб. И получения нового пути, к измененному файлу, что бы записать в свойства.

Может кто нибудь, подскажет, как это сейчас правильнее сделать? На сервере ОС Windows server 2008R2 Enterprise< Service Pack 1.
Так как если какой то метод использовать нужно знать какие dll там зарегистрированы.

Или искать какой то универсальный способ, изменения размеров картинок из 1с независимо.
21 Aleksey
 
06.07.20
11:54
сыр бор из-за 300 рублей? Ну ок не буду мешать самому пистаь
22 falselight
 
06.07.20
12:00
(21) Причем тут сыр бор?????? С какой стати покупать нужно что то по 300р для того что бы что то сделать?????
Хоть 10. Какая разница ????
23 falselight
 
06.07.20
12:01
(21) Примеров и так полно, зачем что то покупать?
24 Tatitutu
 
06.07.20
12:29
(22) никто тебе и не собирался ничего продавать
там по ссылке есть развернутый пример
смысл выгружаешь все свои картинки куда нибудь в папку
берешь стороннюю программку их в сети большой выбор (в т.ч и бесплатных)
указываешь папку и параметры (размер, расширение, разрешение)
программа их обрабатывает. А ты загружаешь обратно в базу уже сжатые.
25 falselight
 
06.07.20
12:40
(24) Ок. Сейчас буду смотреть искать.
Вот я выбрал, изображения которые нужно изменить. Возможно дозадам сейчас ещё фильтр на расширение.


    Запрос       = Новый Запрос;
    Запрос.Текст = "
        |ВЫБРАТЬ
        |    НоменклатураПрисоединенныеФайлы.Ссылка                        КАК Ссылка,
        |    НоменклатураПрисоединенныеФайлы.Наименование                КАК НаименованиеИзображения,
        |    НоменклатураПрисоединенныеФайлы.ВладелецФайла.Ссылка        КАК ВладелецФайлаСсылка,
        |    НоменклатураПрисоединенныеФайлы.ВладелецФайла.Наименование КАК ВладелецФайлаНаименование,
        |    НоменклатураПрисоединенныеФайлы.Размер                        КАК Размер,
        |    НоменклатураПрисоединенныеФайлы.ПутьКФайлу                    КАК ПутьКФайлу,
        |    НоменклатураПрисоединенныеФайлы.ВладелецФайла.ФайлКартинки КАК ВладелецФайлаФайлКартинки,
        |    НоменклатураПрисоединенныеФайлы.Том.ПолныйПутьWindows      КАК ТомПолныйПутьWindows
        |ИЗ
        |    Справочник.НоменклатураПрисоединенныеФайлы КАК НоменклатураПрисоединенныеФайлы";
    Рез = Запрос.Выполнить();
    Если Не Рез.Пустой() Тогда
        Выборка = Рез.Выбрать();
        н = 1;
        Пока Выборка.Следующий() Цикл
            Если Выборка.Размер >= 5000000 Тогда
                Сообщить(СТРОКА(н) +"). "+ Выборка.ВладелецФайлаНаименование +", pic: "+ Выборка.НаименованиеИзображения + " size: " + Выборка.Размер);
                н = н + 1;
            КонецЕсли;
        КонецЦикла;
    КонецЕсли;
26 falselight
 
06.07.20
12:43
(24) картинки хранятся в каталоге. Там и нужно их менять.

Где увидеть только этот развернутый пример. Скачал, там конфигурация.

Какие программы брать и как запускать тоже не ясно (. Я разбираюсь. Ищу информацию.

Буду благодарен за пример который можно было бы попробовать. Что бы изменить размеры.
27 sitex
 
naïve
06.07.20
12:50
(26) Ну если картинки в каталоге причем тут 1С ? Сжимай все что в каталоге этом.
28 sitex
 
naïve
06.07.20
12:50
(26) + К примеру тем же Fastone Image Viewer. Может запустить на ночь от сожмет все по твоим выставленным параметрам.
29 falselight
 
06.07.20
13:05
(27) (28) Работаю по формулировке задачи. С обратной связью проблема. Да хранится все в каталогах.

(9) (21) Это скачал и развернул. Вот сейчас хочу разобраться как что сделать.
30 falselight
 
06.07.20
13:07
(9) В этом примере. только производят выгрузку картинок. но как произвести само их изменение, желательно в коде 1с ???

Там они пользуются какой то сторонней программой.
31 falselight
 
06.07.20
13:10
(9) не нашел как там посмотреть код что отвечает за обработку изменений изображений, это какая то сторонняя обработка и её можно видимо только купить.
32 Fram
 
06.07.20
13:19
(31) подсказка. Из 1с можно запускать другие программы указав параметры.
33 falselight
 
06.07.20
13:20
(28) А что для изменения размера использовать в 1с?
там в каталоге на диске какая то структура, там разное.
Если это можно сделать из 1с, то как?

Вот я получил набор изображений которые нужно изменять, в выборке, как пройти дальше? После (25) ?
34 falselight
 
06.07.20
13:21
(32) Я понимаю. Но какие например?

(24) Как вот это сделать?

указываешь папку и параметры (размер, расширение, разрешение)
программа их обрабатывает. А ты загружаешь обратно в базу уже сжатые.

Где взять какой либо мануал?
35 sitex
 
naïve
06.07.20
13:22
(34) К прмиеру ImageMagick
36 sitex
 
naïve
06.07.20
13:25
(34) Как пример https://habr.com/ru/post/351014/
37 falselight
 
06.07.20
13:27
Пробую вот этот пример. На первой строке выходит сообщение об ошибке.


&НаКлиенте
Процедура ТЕСТ(Команда)
    objImageFile = Новый COMОбъект("WIA.ImageFile");//objImageFile
    objImageProcess = Новый COMОбъект("WIA.ImageProcess");

    objImageFile.LoadFile("C:\1.bmp");

    //блок чисто инфу выводит, можно удалить+
    Сообщить("Width "+objImageFile.Width);
    Сообщить("Height "+objImageFile.Height);
    Сообщить("PixelDepth "+objImageFile.PixelDepth);
    Сообщить("HorizontalResolution "+objImageFile.HorizontalResolution);
    Сообщить("VerticalResolution "+objImageFile.VerticalResolution);
    Сообщить("FrameCount "+objImageFile.FrameCount);
    Если objImageFile.IsAnimated Тогда
    Сообщить("Анимированная");
    Иначе
    Сообщить("НЕ Анимированная");
    КонецЕсли;
    //блок чисто инфу выводит, можно удалить-

    objImageProcess.Filters.Add(objImageProcess.FilterInfos("Scale").FilterID);

    objImageProcess.Filters.Item(1).Properties.Item("MaximumWidth").Value = 50;
    objImageProcess.Filters.Item(1).Properties.Item("MaximumHeight").Value = 50;

    objImageFile = objImageProcess.Apply(objImageFile);
    objImageFile.SaveFile("C:\2.bmp");
КонецПроцедуры



http://joxi.ru/v29ve64TzbxyvA
38 falselight
 
06.07.20
13:28
(36) Остается узнать, как этим пользоваться из 1с. все же не все так просто там.
39 sitex
 
naïve
06.07.20
13:31
(38) Чего там не просто ? установил все что нужно. Батники готовые. Под себя собрал - про тестил. Если как говоришь что обратная связь плоха и установить не получиться сторонние приложение тогда это не твой вариант.
40 falselight
 
06.07.20
13:33
Пробую такой пример, но тут ошибки в коде что ли

Перем WshShell;

Попытка
    WshShell = Новый COMОбъект("WScript.Shell");
    WshShell.CurrentDirectory = КаталогПрограммы();
Исключение
    СообщитьОбОшибке("Невозможно подключить модуль выполнения скриптов", Неопределено, СтатусСообщения.ОченьВажное);
    Возврат Ложь;
КонецПопытки;

WshShell.Run(""""+КаталогПрограммы()+"convert.exe"" """СтароеИмя+""""+
                    -filter Mitchell -resize "+Картинки_Ширина+"x"+Картинки_Высота+" "+
                    """"+НовоеИмяФайла+"""",0,-1);
41 falselight
 
06.07.20
13:34
(39) Что бы взять проверить что либо из  1с, пока такого не вижу ничего ( .
42 falselight
 
06.07.20
13:35
(39) Что например установить нужно? Что бы что то попробовать хотя бы.
43 sitex
 
naïve
06.07.20
13:51
(37) Я тут не увижу сжатие файла , вижу только что размер рисунка изменит.
44 sitex
 
naïve
06.07.20
13:58
(42) Установить все как написано в статье в (36) .
45 sitex
 
naïve
06.07.20
13:59
(40) Я не пойму ты зачем режешь размеры картинки ? тебе сжать или изменить размер надо ?
46 sitex
 
naïve
06.07.20
14:00
(40)  -filter Lanczos -define jpeg:dct-method=float -quality 55 -gaussian-blur 0.05 вот примерно так сожмет  файл рисунка
47 sitex
 
naïve
06.07.20
14:02
+(46) для jpeg, PNG другие параметры.
48 falselight
 
06.07.20
14:04
(45) То есть на размер изображения нужно сжимать не меняя размер?
Возможно не понимаю, не каждый день нужно размер менять.
49 falselight
 
06.07.20
14:05
На это, выходят ошибки. не знаю как проверить.


WshShell.Run(""""+КаталогПрограммы()+"convert.exe"" """+СтароеИмя+""""+
                    "-filter Mitchell -resize "+Картинки_Ширина+"x"+Картинки_Высота+" "+
                    """"+НовоеИмяФайла+"""",0,-1);                



{ВнешняяОбработка.ИзменениеРазмеровФотографий_0_1.Форма.Форма.Форма(76,57)}: Переменная не определена (СтароеИмя)
WshShell.Run(""""+КаталогПрограммы()+"convert.exe"" """+<<?>>СтароеИмя+""""+ (Проверка: Тонкий клиент)
{ВнешняяОбработка.ИзменениеРазмеровФотографий_0_1.Форма.Форма.Форма(77,49)}: Переменная не определена (Картинки_Ширина)
                    "-filter Mitchell -resize "+<<?>>Картинки_Ширина+"x"+Картинки_Высота+" "+ (Проверка: Тонкий клиент)
{ВнешняяОбработка.ИзменениеРазмеровФотографий_0_1.Форма.Форма.Форма(77,69)}: Переменная не определена (Картинки_Высота)
                    "-filter Mitchell -resize "+Картинки_Ширина+"x"+<<?>>Картинки_Высота+" "+ (Проверка: Тонкий клиент)
{ВнешняяОбработка.ИзменениеРазмеровФотографий_0_1.Форма.Форма.Форма(78,26)}: Переменная не определена (НовоеИмяФайла)
                    """"+<<?>>НовоеИмяФайла+"""",0,-1);                 (Проверка: Тонкий клиент)
{ВнешняяОбработка.ИзменениеРазмеровФотографий_0_1.Форма.Форма.Форма(72,5)}: Процедура или функция с указанным именем не определена (СообщитьОбОшибке)
    <<?>>СообщитьОбОшибке("Невозможно подключить модуль выполнения скриптов", Неопределено, СтатусСообщения.ОченьВажное); (Проверка: Тонкий клиент)
50 falselight
 
06.07.20
14:06
не понимаю короче что нужно мне делать.
51 sitex
 
naïve
06.07.20
14:06
(49) Ты прикалываешься так ? :)
52 acht
 
06.07.20
14:08
Вот интересно. Если ТС забанили в гугле и на всех учебных курсах, то почему еще не забанили здесь?
53 falselight
 
06.07.20
14:08
(51) Я говорю что мне не понятно что делать, Я не вижу примера который можно попробовать.
Мысли разбежались, и я не знаю что делать.
Я не прикалываюсь.
Я таким никогда не занимаюсь.
54 falselight
 
06.07.20
14:09
(52) Я сам забанюсь придет время.
55 Lexey_
 
06.07.20
14:15
(52) неоднократно: LivingStar
56 acht
 
06.07.20
14:15
(54) Не забудь, пожалуйста, спросить на форуме как это сделать.
57 sitex
 
naïve
06.07.20
14:16
(53) Установить ImageMagick-7.0.10-Q16-HDRI.
58 falselight
 
06.07.20
14:19
(39) Я обработку могу проверить у себя на компе, и установить тогда все что нужно.

Подскажите тогда, пожалуйста, по коду, который можно проверить.
59 falselight
 
06.07.20
14:35
Ставлю, что бы начать тестирование.

C:\Program Files\ImageMagick-7.0.10-Q16-HDRI
60 falselight
 
06.07.20
14:37
Я поставил C:\Program Files\ImageMagick-7.0.10-Q16-HDRI как мне ее запускать из 1с ?
61 falselight
 
06.07.20
14:39
(57) Подскажите пожалуйста дальше? После установки?

есть выборка с нужными данными (25) как использовать указанную программу?
62 sitex
 
naïve
06.07.20
14:45
(61) Примерно так --->>> СтароеИмя="D:\1.jpeg";
НовоеИмяФайла ="D:\2.jpeg";
ЗапуститьПриложение("""C:\Program Files\ImageMagick-7.0.10-Q16-HDRI\convert.exe"" """+СтароеИмя+""""+" -filter Lanczos -define jpeg:dct-method=float -quality 75 -gaussian-blur 0.05 "+""""+НовоеИмяФайла+"""",,истина);
63 falselight
 
06.07.20
14:48
Ещё попробую (37) зарегистрировал библиотеку у себя.

На сервере вроде как тоже можно будет. Если и установить потом можно будет.

Поставил (57) буду пробовать ваш код (62).

Остается узнать как делать размер файла 4,9 мб. Не больше 5 мб то есть.

Спасибо, за пример, продвигаюсь в решении.
64 sitex
 
naïve
06.07.20
14:57
(63) для Jpeg , можно указать параметр -interlace JPEG. Прогрессивный JPEG вроде как
65 falselight
 
06.07.20
15:12
(64) Судя по выборке с указаниями расширений изображений, там только Jpg и png

буду пробовать ваш пример.

Пока вот иcпользовал (37) он сработал. Файл в 87,7 кб этот код уменьшил до 1,34 кб.
Соответственно и само изображение меньше стало.

В этом коде что то не так? И подскажите как правильно выявлять что бы менять размер на 4,9 Мб, если он превышает 5 мб ?


&НаКлиенте
Процедура ТЕСТ(Команда)
    objImageFile = Новый COMОбъект("WIA.ImageFile");//objImageFile
    objImageProcess = Новый COMОбъект("WIA.ImageProcess");

    objImageFile.LoadFile("D:\2020_07_06\ИзменениеКартинки\1.jpg");

    //блок чисто инфу выводит, можно удалить+
    Сообщить("Width "+objImageFile.Width);
    Сообщить("Height "+objImageFile.Height);
    Сообщить("PixelDepth "+objImageFile.PixelDepth);
    Сообщить("HorizontalResolution "+objImageFile.HorizontalResolution);
    Сообщить("VerticalResolution "+objImageFile.VerticalResolution);
    Сообщить("FrameCount "+objImageFile.FrameCount);
    Если objImageFile.IsAnimated Тогда
    Сообщить("Анимированная");
    Иначе
    Сообщить("НЕ Анимированная");
    КонецЕсли;
    //блок чисто инфу выводит, можно удалить-

    objImageProcess.Filters.Add(objImageProcess.FilterInfos("Scale").FilterID);

    objImageProcess.Filters.Item(1).Properties.Item("MaximumWidth").Value = 50;
    objImageProcess.Filters.Item(1).Properties.Item("MaximumHeight").Value = 50;

    objImageFile = objImageProcess.Apply(objImageFile);
    objImageFile.SaveFile("D:\2020_07_06\ИзменениеКартинки\2.jpg");
КонецПроцедуры
66 sitex
 
naïve
06.07.20
15:16
Стал размером по указаным параметрам. 50 на 50;
    objImageProcess.Filters.Item(1).Properties.Item("MaximumWidth").Value = 50;
    objImageProcess.Filters.Item(1).Properties.Item("MaximumHeight").Value = 50;
67 Aleksey
 
06.07.20
15:18
да уж...
68 falselight
 
06.07.20
15:18
(62) В директории чт оя поставил нет convert.exe

http://joxi.ru/J2bkE89HGaQ4xA
69 sitex
 
naïve
06.07.20
15:23
(63) Вообщее если надо подогнать под размер в ImageMagick  есть параметр -define jpeg:extent={size}.
70 sitex
 
naïve
06.07.20
15:23
почитайте на https://imagemagick.org/script/command-line-processing.php там много чего есть.
71 falselight
 
06.07.20
15:24
(66) Пока не понимаю можно ли использовать пример (65)
И если его использовать то как выравнивать значения размеров, до 4,9 Мб
при условии если размер будет превышать 5 мб.

В базе вот такие размеры файлов jpg и png и больше. до 43 066 247. Ну то есть любые могут быть.
Как вот пример (37) правильно заставить уменьшать размер ???
72 falselight
 
06.07.20
15:25
(71+) От 5 003 366 до 43 066 247
73 sitex
 
naïve
06.07.20
15:25
(68) а галку при установке поставили 5-ую с верху ?
74 falselight
 
06.07.20
15:26
(73) Запущу сейчас ещё раз инсталлятор тогда. Видимо нет.
75 falselight
 
06.07.20
15:28
(73) ставлю http://joxi.ru/l2ZZ8O1cEn9lw2
76 sitex
 
naïve
06.07.20
15:32
(69) Это опять же только для JPEG параметр -->  -define jpeg:extent=5017kb , опять же тут зависит от других параметров , надо их тоже не забывать. Так можно все рисунки запороть.
77 falselight
 
06.07.20
15:38
(76) Стоит дорабатывать пример 2 видимо. Так как доделывать пример 1 не совсем понятно

Подскажите пожалуйста, учитывая что у меня расширения jpg и png, как там что нужно менять для них ?????

Задача в том что если размер больше 5000000 я все эти изображения выбираю. и должен привести к 4900000


&НаКлиенте
Процедура ТЕСТ(Команда)
    // ПРИМЕР 1
    //objImageFile = Новый COMОбъект("WIA.ImageFile");//objImageFile
    //objImageProcess = Новый COMОбъект("WIA.ImageProcess");
    //objImageFile.LoadFile("D:\2020_07_06\ИзменениеКартинки\1.jpg");
    ////блок чисто инфу выводит, можно удалить+
    //Сообщить("Width "+objImageFile.Width);
    //Сообщить("Height "+objImageFile.Height);
    //Сообщить("PixelDepth "+objImageFile.PixelDepth);
    //Сообщить("HorizontalResolution "+objImageFile.HorizontalResolution);
    //Сообщить("VerticalResolution "+objImageFile.VerticalResolution);
    //Сообщить("FrameCount "+objImageFile.FrameCount);
    //Если objImageFile.IsAnimated Тогда
    //Сообщить("Анимированная");
    //Иначе
    //Сообщить("НЕ Анимированная");
    //КонецЕсли;
    ////блок чисто инфу выводит, можно удалить-
    //objImageProcess.Filters.Add(objImageProcess.FilterInfos("Scale").FilterID);
    //objImageProcess.Filters.Item(1).Properties.Item("MaximumWidth").Value = 50;
    //objImageProcess.Filters.Item(1).Properties.Item("MaximumHeight").Value = 50;
    //objImageFile = objImageProcess.Apply(objImageFile);
    //objImageFile.SaveFile("D:\2020_07_06\ИзменениеКартинки\2.jpg");
    //
    // ПРИМЕР 2
    СтароеИмя     = "D:\2020_07_06\ИзменениеКартинки\1.jpg";
    НовоеИмяФайла = "D:\2020_07_06\ИзменениеКартинки\2.jpg";
    ЗапуститьПриложение("""C:\Program Files\ImageMagick-7.0.10-Q16-HDRI\convert.exe"" """+СтароеИмя+""""+" -filter Lanczos -define jpeg:dct-method=float -quality 75 -gaussian-blur 0.05 "+""""+НовоеИмяФайла+"""",,истина);    
КонецПроцедуры
78 falselight
 
06.07.20
15:40
Пример (77) изменил файл с размера 87,7 кб до 45,9 кб
79 sitex
 
naïve
06.07.20
15:45
(77) Под каждое расширение файла запускаешь со своими параметрами ImageMagick. Качество и размер файла определи на тестовых файлах. про PNG почитать манулы.
80 falselight
 
06.07.20
15:49
(79) Ок, спасибо большое.

Нужно тогда мне сейчас экспериментировать с размерами.

Прояснится ли что, так как все же сложновато все под вечер.

Сейчас остается тогда понять как запускать для jpg и png. С какими параметрами, и что бы размер становился 4,9 мб.
81 falselight
 
06.07.20
15:50
(80) Так как в выборке все размера больше 5 мб идут.

Потом уже прочая обработка.
82 sitex
 
naïve
06.07.20
15:51
(36) здесь все расписано прям очень подробно.
83 sitex
 
naïve
06.07.20
15:52
(80) Можно просто батник сделать и запустить его из 1С , который сам выберет и по размеру , и по расширению и в кривь и кось).
84 falselight
 
06.07.20
15:54
(83) Хотя бы вот так сделать как есть пока. То есть есть выборка которая все размеры больше 5 мб, ставит к 4,9 мб.

(82) Спасибо буду изучать.