Здравей, Slavei!
Както винаги, радвам се да те видя, макар че най-вероятно ще прочетеш отговора ми след някой и друг месец
По първата ти идея - да записвам в БД. Мислих го, но трудно мога да го контролирам, ако запазя модела с рнрВВ-таговете.
Примерна хипотеза:
Потребителят слага 3 снимки. Аз ги, меря, тегля, прошнуровам и пр, а резултата записвам в допълнителната таблица като пълен адрес и размери + ид-то на конкретния пост.
Пълният адрес е в случай, че при последваща редакция потребителят реши да размени местата на изображенията (а при обработката на низа мога да получа като сигурен идентификатор само адреса), а ид-то е за да облекча селекта при листване на поста.
Дотук ОК, даже много добре звучи.
Обаче, ако при редакцията потребителя премахне изображението?
Не казвам, че е невъзможно да се изтрие информацията за него, но не е удобно. Това са излишни операции, които искам да избегна...
разбира се, нещата биха се опростили, ако снимките се добавят в отделни полета, вместо в целия низ, но тогава възниква въпроса: къде ще слагам изображенията: над текста, под текста, в началото на праграф?
Ще ми се потребителят сам да им избира местата, затова рнрВВ-таговете са удобни.
По другия въпрос: защо смятам 2 съотнощения - по Х и по У?
Защото съм сложил лимит не само за ширината, но и за височината. А съотношението между страните не кореспондира пряко с лимита. Не само, че не пестя операция, но дори ще трябва да слагам проверка дали при намалението със съотношението другата страна все пак не надвишава лимита...
Докато:
$old_x/$old_y
ми дава само съотношението межу страните без връзка с лимитираната височина и ширина.
Ако лимита е квадрат - ок, така при намаляване на по-голямата страна и изчисляването на другата по нея "вместването" ще се получи, но при мен лимита е 400/600. Така не винаги по-голямата страна е тази, к излиза от лимита.
С тези два реда се получават, както съотношението между страните, така и съотношението на всяка от тях спрямо лимита:
$ratio_x=$old_x/$SIZE_X;
$ratio_y=$old_y/$SIZE_Y;
Така по-голямото съотношение ми дава страната, к излиза най-много от лимита, т.е. при нейното намаляване до лимита:
$width=$SIZE_X; или $height=$SIZE_Y
другата със сигурност ще се вмести в своя.
При неизвестност относно лимита, аз ще намаля по-голямата страна на изображението, а другата ще подравня по съотношението й спрямо първата без да съм сигурен, че това ще я "прибере" до зададените рамки.
За да имам тази сигурност, ще трябва да сложа още едно условие и евентуално да въртя в цикъл (или да описвам операцията отново).
Пробвай и ще видиш! Глътна ми няколко часа докато се сетя къде греша в иначе логичния код.
Прочем от операциите на сървъра се отказах. Снощи разглеждах джСкр на линкоса за рисайз, но не успях да го хвана, как работи (изглежда имат операция на сървъра). Все пак, ще се опитам да измисля решение с джскрипт...
Неприятното е, че изпуснах собствения си срок и ме налегна мързела, а уж съм в края на проекта
Благодаря, че се включи по темата!