imagemagick - не сохраняются настройки

admin
Site Admin
Posts: 37994
Joined: Wed Sep 10, 2008 11:43 am

Re: imagemagick - не сохраняются настройки

Post by admin »

дабы ковычки показывало как надо добавлен фикс в апедйт

в строку к ИМ можно и без ковычек -resize 50%хотя не совсем ясен смысл этого в строке )
Don't forget to run script update
zxc
Posts: 13
Joined: Sun Apr 19, 2015 10:23 am

Re: imagemagick - не сохраняются настройки

Post by zxc »

так. кажется из-за escapeshellcmd не правильно и работает все.
это можно убрать из скрипта?

к примеру такого типа строчки не работают

Code: Select all

convert 1.jpg -fx 'iso=32; rone=rand(); rtwo=rand(); myn=sqrt(-2*ln(rone))*cos(2*Pi*rtwo); myntwo=sqrt(-2*ln(rtwo))* cos(2*Pi*rone); pnoise=sqrt(p)*myn*sqrt(iso)* channel(4.28,3.86,6.68,0)/255; max(0,p+pnoise)' 2.jpg
admin
Site Admin
Posts: 37994
Joined: Wed Sep 10, 2008 11:43 am

Re: imagemagick - не сохраняются настройки

Post by admin »

Я думаю тут надо двойные ковычки использовать, а не одинарные.

PS Строчка серьезная, у меня даже вентилятор заработал когда ее тестило )
Don't forget to run script update
zxc
Posts: 13
Joined: Sun Apr 19, 2015 10:23 am

Re: imagemagick - не сохраняются настройки

Post by zxc »

напрямую в шелл если выполнить вывод php

c escapeshellcmd одинарные ковычки

Code: Select all

 convert 1.jpg -fx 'iso=32\; rone=rand\(\)\; rtwo=rand\(\)\; myn=sqrt\(-2\*ln\(rone\)\)\*cos\(2\*Pi\*rtwo\)\; myntwo=sqrt\(-2\*ln\(rtwo\)\)\* cos\(2\*Pi\*rone\)\; pnoise=sqrt\(p\)\*myn\*sqrt\(iso\)\* channel\(4.28,3.86,6.68,0\)/255\; max\(0,p+pnoise\)' 2.jpg
convert: unable to parse expression `\(-1.0*2\*ln\(rone\)\)\' @ error/fx.c/FxGetSymbol/1858.
двойные кавычки c escapeshellcmd

Code: Select all

convert 1.jpg -fx "iso=32\; rone=rand\(\)\; rtwo=rand\(\)\; myn=sqrt\(-2\*ln\(rone\)\)\*cos\(2\*Pi\*rtwo\)\; myntwo=sqrt\(-2\*ln\(rtwo\)\)\* cos\(2\*Pi\*rone\)\; pnoise=sqrt\(p\)\*myn\*sqrt\(iso\)\* channel\(4.28,3.86,6.68,0\)/255\; max\(0,p+pnoise\)" 2.jpg
convert: unable to parse expression `\(-1.0*2\*ln\(rone\)\)\' @ error/fx.c/FxGetSymbol/1858.

без escapeshellcmd

Code: Select all

convert 1.jpg -fx 'iso=32; rone=rand(); rtwo=rand(); myn=sqrt(-2*ln(rone))*cos(2*Pi*rtwo); myntwo=sqrt(-2*ln(rtwo))* cos(2*Pi*rone); pnoise=sqrt(p)*myn*sqrt(iso)* channel(4.28,3.86,6.68,0)/255; max(0,p+pnoise)' 2.jpg
все ок
admin
Site Admin
Posts: 37994
Joined: Wed Sep 10, 2008 11:43 am

Re: imagemagick - не сохраняются настройки

Post by admin »

Я не совсем понял первые 2 варианта но конкретно вариант

-fx "iso=32; rone=rand(); rtwo=rand(); myn=sqrt(-2*ln(rone))*cos(2*Pi*rtwo); myntwo=sqrt(-2*ln(rtwo))* cos(2*Pi*rone); pnoise=sqrt(p)*myn*sqrt(iso)* channel(4.28,3.86,6.68,0)/255; max(0,p+pnoise)"

в custom IM у меня работает и дисторшн для картинки делает без проблем.

У вас нет ?
Don't forget to run script update
zxc
Posts: 13
Joined: Sun Apr 19, 2015 10:23 am

Re: imagemagick - не сохраняются настройки

Post by zxc »

нет.

bash,sh не понимает этого экранирования с escapeshellcmd.

(c) SmartCJ Pro V 2.1 Build 201504201204 (Lastest build: 201504201204 )

выдержка из лога:

Code: Select all

2015-04-21 00:50:23: IM Cmd custom : /usr/bin//convert  -crop +0+85 +repage  -crop -0-85 +repage   -resize 150x200^ -gravity Center -crop 150x200+0+0  -fx "iso=32; rone=rand(); rtwo=rand(); myn=sqrt(-2*ln(rone))*cos(2*Pi*rtwo); myntwo=sqrt(-2*ln(rtwo))* cos(2*Pi*rone); pnoise=sqrt(p)*myn*sqrt(iso)* channel(4.28,3.86,6.68,0)/255; max(0,p+pnoise)"  ../tmp/7900/13.jpg.thumb.jpg.tmp.jpg ../tmp/7900/13.jpg.thumb.jpg  (10.544121980667, 0.00053501129150391)
2015-04-21 00:50:23: IM process error convert: unable to parse expression `\(-1.0*2\*ln\(rone\)\)\' @ error/fx.c/FxGetSymbol/1858.
 (10.792242050171, 0.24816703796387)

такая же ошибка, как и в прямых примерах выше.
zxc
Posts: 13
Joined: Sun Apr 19, 2015 10:23 am

Re: imagemagick - не сохраняются настройки

Post by zxc »

если взять строчку из лога, и запустить напрямую в шелле (только поменять названия изображений) - работает.

но в реальности, пхп передает в exec, совсем другую строчку, с экранированиями. а это приводит к ошибки.
zxc
Posts: 13
Joined: Sun Apr 19, 2015 10:23 am

Re: imagemagick - не сохраняются настройки

Post by zxc »

на всякий случай - тестировалось на debian и ubuntu 12.04
admin
Site Admin
Posts: 37994
Joined: Wed Sep 10, 2008 11:43 am

Re: imagemagick - не сохраняются настройки

Post by admin »

Только что попробовал на фре - все работает.
не думаю что разница будет со фрей.
Скиньте плз админку и по действиям что куда вписывать что б получить ошибку.
Don't forget to run script update
serge
Posts: 929
Joined: Mon Mar 14, 2011 7:53 am

Re: imagemagick - не сохраняются настройки

Post by serge »

апнул скрипт, перестали грабиться тумбы, что-то явно с IM, зашел создать новый топик, но похоже мне сюда :D вобщем чего-то намудрили, что теперь тумбы создаются только при условии, что в профайле указана ширина и высота картинки. Раньше у меня было так: Thumb X = 300, Thumb Y = 0, создавались тумбы шириной 300 пикселей разной высоты (в зависимости от пропорций), теперь - фиг... нужно указывать например Thumb X = 300, Thumb Y = 250, чтобы тумба создалась, иначе либо ничего, либо белый квадрат. Верните все назад! :)
Post Reply