Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Изменение файла изображения расширения png

Изменение файла изображения расширения png
Я
   falselight
 
08.07.20 - 09:03
Подскажите пожалуйста по изменению размера изображения в формате png

Есть процедура которая меняет изображения jpg. Делаю наспех, по этому не все ещё выявил наверное.
и не привел сам код к оптимальному виду, важно что бы работало, и делало то что нужно пока.

Вот тут идет обработка jpg, а если нужно будет обработать png, какая будет строка обработки???

    
             """" + " -filter Lanczos -define jpeg:dct-method=float -quality 70 -gaussian-blur 0.05 " +


&НаСервере
Процедура ОбработатьНаСервере()
    МестоПоложение = "C:\Файлы1с\";
    н              = 1;
    Для каждого СтрТч из ИзображенияДляОбработки Цикл
        Если СтрТч.Обрабатывать Тогда
            ПутьКФайлу     = СокрЛП(СтрТч.ПутьКФайлу);
            СтароеИмя      = МестоПоложение + СокрЛП(ПутьКФайлу);
            //
            НовоеИмяФайла  = МестоПоложение + ЛЕВ(ПутьКФайлу, СтрДлина(ПутьКФайлу)-4) + "new." + ПРАВ(ПутьКФайлу, 3);
            //
            Если СтрТч.Размер >= 5000000 Тогда
                Сообщить(СТРОКА(н) +"). "+ СокрЛП(СтрТч.Номенклатура) +", pic: "+ СокрЛП(СтрТч.НазваниеКартинки) + " size: " + СтрТч.Размер + ", " + СтрТч.ПутьКФайлу);
                Если СтрТч.Размер < 35000000 Тогда
                    ЗапуститьПриложение("""C:\Program Files\ImageMagick-7.0.10-Q16-HDRI\convert.exe"" """ +
                                        СтароеИмя +
                                        """" + " -filter Lanczos -define jpeg:dct-method=float -quality 75 -gaussian-blur 0.05 " +
                                        """" + НовоеИмяФайла+"""", , Истина);    
                Иначе
                    ЗапуститьПриложение("""C:\Program Files\ImageMagick-7.0.10-Q16-HDRI\convert.exe"" """ +
                                        СтароеИмя +
                                        """" + " -filter Lanczos -define jpeg:dct-method=float -quality 70 -gaussian-blur 0.05 " +
                                        """" + НовоеИмяФайла+"""" , , Истина);    
                КонецЕсли;                                                
                н = н + 1;
                //
                НовыйСозданныйФайл =Новый Файл(МестоПоложение + ЛЕВ(ПутьКФайлу, СтрДлина(ПутьКФайлу)-4) + "new." + ПРАВ(ПутьКФайлу, 3));
                //
                СпрОбъект            = СтрТч.ПрисоединенныеФайлы.ПолучитьОбъект();
                СпрОбъект.ПутьКФайлу = ЛЕВ(ПутьКФайлу, СтрДлина(ПутьКФайлу)-4) + "new." + ПРАВ(ПутьКФайлу, 3);
                СпрОбъект.Размер     = НовыйСозданныйФайл.Размер();
                СпрОбъект.Записать();
                Сообщить("Новый файл имеет имя " + НовоеИмяФайла + ", размер: " + НовыйСозданныйФайл.Размер());
                //
                //УдалитьФайлы(СтароеИмя);
                //Сообщить("Старый файл " + СтароеИмя + " УДАЛЕН !");
                ПереместитьФайл(СтароеИмя, "C:\Файлы1с\ФайлыДляУдаления\" + СтрТч.ПрисоединенныеФайлы.Наименование + "." + СтрТч.ПрисоединенныеФайлы.Расширение);
                Сообщить("Старый файл " + СтароеИмя + " ПЕРЕМЕЩЕН в каталог C:\Файлы1с\ФайлыДляУдаления\" + СтрТч.ПрисоединенныеФайлы.Наименование + "." + СтрТч.ПрисоединенныеФайлы.Расширение);
                //
            КонецЕсли;
        КонецЕсли;
    КонецЦикла;
КонецПроцедуры
   Ц_У
 
1 - 08.07.20 - 09:11
Мы тут больше пофлудить сидим и о проводках поговорить...
https://imagemagick.org/script/convert.php
   falselight
 
2 - 08.07.20 - 09:57
(1) Но а все же, подскажите если вы понимаете, как будет представлена вот эта строка, для обработки png ?

  """" + " -filter Lanczos -define jpeg:dct-method=float -quality 70 -gaussian-blur 0.05 " +
   Йохохо
 
3 - 08.07.20 - 10:13
этой строке пофиг
   falselight
 
4 - 08.07.20 - 10:24
(3) То есть обработается и файл с расширением .png ?
   pechkin
 
5 - 08.07.20 - 10:28
а попробовать?
и если не получится то уже спрашивать
   Ц_У
 
6 - 08.07.20 - 10:30
(2) png:compression-level=value    
Valid values are 0 through 9, with 0 providing the least,
but fastest compression and 9 usually providing the best and always the slowest.
(4) должен
  """" + " -filter Lanczos -define png:compression-level=9 -quality 70 -gaussian-blur 0.05 " +
   Йохохо
 
7 - 08.07.20 - 10:31
(6) who u r tolk to?
   Ц_У
 
8 - 08.07.20 - 10:37
(7) шта? :)
   Йохохо
 
9 - 08.07.20 - 10:44
(8) talk, sry mi engrish are beast
   falselight
 
10 - 08.07.20 - 13:38
(6) то есть строка для png должна быть такая

  """" + " -filter Lanczos -define png:compression-level=9 -quality 70 -gaussian-blur 0.05 " +

А по какой инструкции выявили?

Учитывая что для jpg она такая

    """" + " -filter Lanczos -define jpeg:dct-method=float -quality 75 -gaussian-blur 0.05 " +

compression-level=9 - новый метод !!!
   falselight
 
11 - 08.07.20 - 15:02
буду пробовать, пока не дошло до этого, кому интересно, может чем поделится?
   Ц_У
 
12 - 08.07.20 - 15:17
(10) по этой (1) , я понимаю, что вам лень читать, но это форум для "помогите", а не для "сделайте за меня"
(11) вот когда дойдете до этого, тогда и вопрос зададите
   falselight
 
13 - 08.07.20 - 16:18
(12) Ок. Я только спросил. Нет делать сил, вот какая причина. Была бы, я бы с радостью.
Но, это утро следующего дня.

Список тем форума
Рекламное место пустует  Рекламное место пустует
Закон Брукера: Даже маленькая практика стоит большой теории.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.