Перейти к содержанию
Форум поддержки пользователей VamShop

почему с закачкой картинок- так ужасно несерьезно???


Рекомендуемые сообщения

беру картинку товара 720.gif в админке в товаре закачиваю его- получаю сообщение- картинка загружена..

и на выходе такую надпись 3434_0.gif- файл не найден?

1) с какого перепугу он вообще их переименовывает? никто ведь не просил...

2) с какого перепугу- файла то вообще и нет? хотя написано что загружено...

ладно, подумал подумал..пошел в админку, в настройки картинок..подумал, что чего-то может не понимаю...

Разрешить генерацию картинки на странице списка товаров в категории- включил это...

Разрешить генерацию картинки на странице карточки товара - включил это

в общем везде где разрешить генерацию, нажал включить ( иначе написано, мол не забудьте закачать по FTP)..

ладно- беру GIF- картинку с прозрачным фоном, загружаю- вуаля..получаю вместо прозрачного фона- черный...

офигеть- дай две.. ан нет, две никак не получается- ОДНА!!! то есть картинка существует сейчас только как tumbnail, при входе в карточку товара ее нет..

ладно, думаю попробовать с jpg- может не будет таких траблов?

захожу в админку- жму удалить картинку, елки палки..не удаляется... что делать???

ладно думаю,  загружу jpg,  делаю это- магазин радостно переименовывает 720.jpg в  3434_0.jpg ( молодец- нечего сказать... )

стираю кэш - блин, оказывается дело было в нем, вот я балбес.. сразу картинки все появились.

Отсюда ужасный, я бы даже сказал- страшный вопрос, тянущийся с версии 1.1 VamShop - ну как вообще сделать, чтобы gif картинка с прозрачным фоном- не сквозила потом чернотой????

как был бы он прозрачный, так бы и оставался  ( или белый на худой конец).

и второй вопрос- ну зачем это нездоровое переименование??? :-[ :-[ :-[ :-[ :-[

как его или отключить, или задавать где-то...

вот представьте- все товары в gif формате с прозрачным фоном, простому пользователю сложно обьяснить- что надо делать в фотошопе или где-то еще преобразование из gif в jpg, либо как вариант- можно ли сделать, чтобы магазин преобразование делал из gif в jpg сам? ведь это куда практичней..

Ссылка на сообщение
Поделиться на другие сайты

1. С такого, что много любителей грузить картинки с русскими названиями, с пробелами в названиях и т.д.

2. По умолчанию всё есть и всё грузится, если права доступа установлены правильно.

Ссылка на сообщение
Поделиться на другие сайты

логично..а про gif  с прозрачным фоном либо его возможное переделывание в jpg ? ведь если меняется название, то не побоку ли будет на расширение? все равно черный фон- никому никогда не нужен!

Ссылка на сообщение
Поделиться на другие сайты

С прозрачностью пока проблема не решена.

Конечно не по боку, расширение, это же не просто три буковки после точки.

Это разные форматы файла.

Ссылка на сообщение
Поделиться на другие сайты

так какая разница в расширении человеку, который даже не разбирается английские или русские названия, с пробелами или без?? в таком случае- он даже и не заметит что расширение поменялось.. главное чтобы в магазине все показывалось..

а что нужно для того-чтобы решить проблему с прозрачностью?

Ссылка на сообщение
Поделиться на другие сайты

Всё и показывается, не показывалось бы как раз если б были русские названия и пробелы.

Наверное найти php библиотеку, которая режет картинки, сохраняя прозрачность.

Я такой пока что не видел, единственное, что видел, это замена цвета на белый.

Ссылка на сообщение
Поделиться на другие сайты

да замена цвета на белый это тоже был бы выход, по крайней мере черный то никуда не годится..

Ссылка на сообщение
Поделиться на другие сайты

Димитрий 

Если не сложно, зарегистрируйте на vamshop.ru/bugs

В следующей версии будет исправлено.

Ссылка на сообщение
Поделиться на другие сайты

Пока что сделал только белый фон.

Вот исправленный /admin/includes/classe/image_manipulator_GD2.php.

image_manipulator_GD2.php

Ссылка на сообщение
Поделиться на другие сайты

Что-то нормальной нарезки с сохранением прозрачности в gif/png по ходу дела вообще не существует.

Если кто видел, может в какой-то cms или статья какая, поделитесь ссылкой, интересно.

Ссылка на сообщение
Поделиться на другие сайты
  • 3 weeks later...

в phpthumb, например, прозрачность сохраняется. Видимо при нарезке изображения надо ее детектировать:

imagealphablending($img, false);
imagesavealpha($img, true);[/code] Может стоить перейти хотя бы на easyphpthumbnail. Там все просто с обработкой. Подключаем файл и далее все эффекты, что надо (из примера):    
[code]
$thumb = new easyphpthumbnail; 
$thumb -> Thumbwidth = $th_width;
$thumb -> Thumbheight = $th_height;

          if($rcorner){
            $thumb -> Clipcorner = array(2,$rcorner,0,1,1,1,1);
            $thumb -> Backgroundcolor = '#FFFFFF';
          }
          if($watermark){
            $thumb -> Watermarkpng = $watermark;
            $thumb -> Watermarktransparency = 60;
            $thumb -> Watermarkposition = $watermarkPos;
          }
          if($copyrighttext){
            $thumb -> Copyrightfonttype = "../CONSOLAZ.TTF";
            $thumb -> Copyrightposition = $watermarkPos;
            $thumb -> Copyrightfontsize = 12;
            $thumb -> Copyrighttextcolor = '#FFFFFF';
            $thumb -> Copyrighttext = $copyrighttext;
          }

$thumb -> Quality = $quality;
$thumb -> Thumblocation = "../".$location;
$thumb -> Thumbprefix = $prefix;
$thumb -> Createthumb("../$s_value","file");

easyphpthumbnail.class.php

Ссылка на сообщение
Поделиться на другие сайты

В phpThumb тоже не сохраняется, во всяком случае вот я опять же в VaM Cart использую phpThumb, прозрачность меняется на белый фон.

Ну или может руки кривые.

Спасибо за код, попробую глянуть.

Ссылка на сообщение
Поделиться на другие сайты
  • 10 months later...

нет  :)

по ссылке вариант решения проблемы с прозрачностью, если я правильно понял

Ссылка на сообщение
Поделиться на другие сайты

А по какой ссылке?!

Вот в этом сообщении http://vamshop.ru/forum/index.php?topic=4952.msg62094#msg62094 ссылок нет.

Ссылка на сообщение
Поделиться на другие сайты

жаль  :(

на вордпрессе вроде сработало (знакомый воспользовался этим решением проблемы в своем проекте)

Ссылка на сообщение
Поделиться на другие сайты

А для пробы он может загрузить картинку, например вот эту logo.png

Прозрачность сохранится при нарезке?!

В wordpress же у него картинки умеьшаются, т.е. режутся, а не просто оригинальными остаются?!

Ссылка на сообщение
Поделиться на другие сайты

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

Да в вп картинки автоматом нарезаются на тумбнейлы (именно нарезаются), но есть и функция масштабирования, причем прозрачность сохраняется!

Вот пример: hhttp://www.sad74.ru/category/test  здесь test - вырезанный тумбнейл из картинки, а test2 - масштабированный

Если правильно понял, то эту операцию выполняет функция:


function load_image_to_edit($post_id, $mime_type, $size = 'full') {
$filepath = get_attached_file($post_id);

if ( $filepath && file_exists($filepath) ) {
if ( 'full' != $size && ( $data = image_get_intermediate_size($post_id, $size) ) )
$filepath = path_join( dirname($filepath), $data['file'] );
} elseif ( WP_Http_Fopen::test() ) {
$filepath = wp_get_attachment_url($post_id);
}

$filepath = apply_filters('load_image_to_edit_path', $filepath, $post_id, $size);
if ( empty($filepath) )
return false;

switch ( $mime_type ) {
case 'image/jpeg':
$image = imagecreatefromjpeg($filepath);
break;
case 'image/png':
$image = imagecreatefrompng($filepath);
break;
case 'image/gif':
$image = imagecreatefromgif($filepath);
break;
default:
$image = false;
break;
}
if ( is_resource($image) ) {
$image = apply_filters('load_image_to_edit', $image, $post_id, $size);
if ( function_exists('imagealphablending') && function_exists('imagesavealpha') ) {
imagealphablending($image, false);
imagesavealpha($image, true);
}
}
return $image;
[/code]

в файле wp-admin\includes\image-edit.php

но о этих функциях уже писал [b]kpoxas[/b]

Ссылка на сообщение
Поделиться на другие сайты

Да что-то толи руки кривые, толи ещё что.

Всё равно не идёт, чёрный фон получается.

Буду смотреть.

Ссылка на сообщение
Поделиться на другие сайты

с imagecolorallocatealpha не получится пример посмотреть, он на локалхосте :(

но смысл похоже такойже, просто с другой функцией

может проблема в том, что нужно использовать связку

imageAlphaBlending и imagesavealpha (во всех примерах, которые нашел, они вместе присутствуют)

Ссылка на сообщение
Поделиться на другие сайты
×
×
  • Создать...