Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Полупрозрачные края картинок (можно ли сделать?) (https://javascript.ru/forum/dom-window/65015-poluprozrachnye-kraya-kartinok-mozhno-li-sdelat.html)

Fesali 20.09.2016 13:07

Полупрозрачные края картинок (можно ли сделать?)
 
Здравствуйте:) .
Очень просто можно сделать в фотошопе картинку с полупрозрачными краями, сохранить в PNG и всё хорошо. Только вот файл такой с альфаканалом весить будет ну очень много (как следствие того- сайт потом долго грузится).
Вопрос, как зделать средствами JS эффект полупрозрачных краёв картинки(jpg,png)? Можно ли? Подскажите пожалуйтса.

Из такого


сделать вот так

warren buffet 20.09.2016 13:39

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

Не надо тебе этого хотеть. Можно сделать на канвасе или в SVG. Но не надо. Просто поменяй провайдера.

рони 20.09.2016 13:46

Fesali,
https://habrahabr.ru/post/190246/

Fesali 20.09.2016 13:55

Цитата:

Сообщение от warren buffet (Сообщение 429211)
Не надо тебе этого хотеть. Можно сделать на канвасе или в SVG. Но не надо. Просто поменяй провайдера.

У меня с провайдером все нормально. А вот когда заходиш на сайт с планшета или 3G, вот тогда долго грузится, видны все кракозябры и прочее. Пример- Картинка с альфаканалом допустим весит 470кб, лучше втулить вместо неё jpg 130кб (если получится сделать такой эффект) - страница бытрее будет грузится, и трафи не зас..ется. Вот незнаю, как сделать?

рони 20.09.2016 13:57

Fesali,
http://www.netzgesta.de/edge/

рони 20.09.2016 14:01

Fesali,
http://codepo8.github.io/canvas-masking/

Fesali 20.09.2016 14:03

рони , спасибо, похоже это именно оно! Пойду юзать, учится.

Dilettante_Pro 20.09.2016 14:24

Или как-то так
<style>
.container {
   position:relative;
   display: inline-block;
}
.mask {
   position:absolute;
   top: 0px;
   left: 0px;
   width:100%;
   height:100%;
   background-image: -webkit-radial-gradient(50% 50%, ellipse closest-side, rgba(255,255,255,0) 40%, rgba(255,255,255,1));
     background-image: -moz-radial-gradient(50% 50%, ellipse closest-side, rgba(255,255,255,0) 40%, rgba(255,255,255,1));
  background-image: -o-radial-gradient(50% 50%, ellipse closest-side, rgba(255,255,255,0) 40%, rgba(255,255,255,1));
  background-image: -ms-radial-gradient(50% 50%, ellipse closest-side, rgba(255,255,255,0) 40%, rgba(255,255,255,1));
   z-index: 100;
}
</style>
<div class="container">
   <image src= "http://www.imageup.ru/img133/2542020/preload.png"/>
   <div class="mask">
   </div>
</div>

Fesali 20.09.2016 14:57

Dilettante_Pro Это Вы наложили градиент который уходит в белый цвет. Нужно чтоб картинка уходила в прозрачность, чтоб края картинки были прозрачными!

Fesali 20.09.2016 15:15

рони ваш пример что-то не работает.


Часовой пояс GMT +3, время: 18:54.