Форум
Написать нам
  • Страница 1 из 1
  • 1
Модератор форума: as-master  
Окно с полупрозрачными областями
ДимаДата: Пятница, 02 Февраля 2007, 18:49 | Сообщение # 1
Новый участник
Группа: Пользователи
Сообщений: 13
Репутация: 1
Награды: 0
Статус: Offline
Прозрачностью мы научились пользоваться благодаря уроку на сайте http://www.mmbuilder.ru (через маски). Но мне бы хотелось сделать полупрозрачным (а не полностью прозрачным) конкретный участок (объект). И не все окно целиком. Как это сделать? Например через плагин Opocity.dll

Иисус в нашей жизни № 1! Иисус живет в нас, Иисус мир победил!

Сообщение отредактировал Дима - Пятница, 23 Марта 2007, 19:31
 
as-masterДата: Суббота, 03 Февраля 2007, 01:30 | Сообщение # 2
Группа: Удаленные





Нельзя!!!
Плагином можно только ВСЁ ОКНО.
Также можно менять прозрачность растровых картинок.
Но изменение их прозрачности не приводит к изменению прозрачности окна.
То есть сама картинка будет полупрозрачной, но окно проекта просвечивать
всё равно не будет.
 
ДимаДата: Суббота, 17 Марта 2007, 12:51 | Сообщение # 3
Новый участник
Группа: Пользователи
Сообщений: 13
Репутация: 1
Награды: 0
Статус: Offline
Можно!!!
Но не с этими плагинами!
Ха! А я добился всетаки полупрозрачности в нужных местах, а там где она не нужна - ее нет. Слава Богу что Он дал мне мудрости как это сделать. Выглядит супер. И плагины совсем не пригодились :)
Но всем обитателям и читателям этого сайта я рекомендую также пользоваться и этими примочками, если хотитите сделать полупрозрачность более качественной! Пока единственный недостаток в плагинах - полупрозрачность на все окно распространяется. А в моём методе их аж 3 (недостатка), если не больше, но зато куда хотите туда полупрозрачность и вставляйте smile


Иисус в нашей жизни № 1! Иисус живет в нас, Иисус мир победил!

Сообщение отредактировал Дима - Четверг, 22 Марта 2007, 00:21
 
OmarДата: Суббота, 17 Марта 2007, 14:47 | Сообщение # 4
Группа: Удаленные





Ну и каким образом?
 
toizyДата: Суббота, 17 Марта 2007, 15:15 | Сообщение # 5
Группа: Удаленные





Да-да, можно ли поглядеть результат?
 
as-masterДата: Суббота, 17 Марта 2007, 15:16 | Сообщение # 6
Группа: Удаленные





Quote (Дима)
Можно!!! Но не с этими плагинами!

РЕЦЕПТ В СТУДИЮ!!!

 
ДимаДата: Среда, 21 Марта 2007, 20:44 | Сообщение # 7
Новый участник
Группа: Пользователи
Сообщений: 13
Репутация: 1
Награды: 0
Статус: Offline
Дело в том, что трафик у меня кончился и я не успел оставить пример. Теперь выкладываю. Все дело не в плагинах и модулях. Тот кто работает серьезно с графикой, догадается что прозрачность создается при помощи растровой сетки в виде шахматной доски. Это дошло до меня и я рад, что могу делиться этим с вами. Так что держите сей пример, пользуйтесь и применяйте в своих работах.
Так же предупреждаю, что эффект от этого мощный (по крайней мере достигается всеми средствами ММВ, без дополнений), но как и у всего что есть в мире, у сей прозрачности есть свои недостатки. Какие? Сами увидите. Теперьча пробуем пример.
Прикрепления: 23737397.zip (35.9 Kb)


Иисус в нашей жизни № 1! Иисус живет в нас, Иисус мир победил!

Сообщение отредактировал Дима - Четверг, 22 Марта 2007, 08:04
 
as-masterДата: Среда, 21 Марта 2007, 20:51 | Сообщение # 8
Группа: Удаленные





Действительно... Молодец, Дима! Слов нет. У меня smile
А от тебя неплохо бы получить комментарии. Не все, я думаю,
смогут разобраться, как ты этого достиг. И потому, раз уж ты не вложил
комменты в сам файл, то напиши об этом подробнее на форуме.

Насчет недостатков - вижу. Видимо, этого избежать уже никак нельзя.

 
toizyДата: Среда, 21 Марта 2007, 21:05 | Сообщение # 9
Группа: Удаленные





Что сказать? Молодец! Главное, что никто из нас не догадался сделать так.
О недостатках. Этот способ всё-таки не стоит рядом с использованием плагинов, поскольку сетка размером 1х1 пиксель слишком заметна. По крайней мере, на моём ЖК. Следующий недостаток в том, что прозрачности в сооношении, отличном от 50%, таким способом не добиться, по крайней мере, без ущерба качеству.
Но всё равно молодец smile
 
YURIYДата: Среда, 21 Марта 2007, 23:05 | Сообщение # 10
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
Дима, красиво smile

Quote (Дима)
Что за слова? Почему так плохо говорите - все это треп.

Omar, не зли меня smile



Вечная память Андрею Сергееву!
 
ДимаДата: Среда, 21 Марта 2007, 23:58 | Сообщение # 11
Новый участник
Группа: Пользователи
Сообщений: 13
Репутация: 1
Награды: 0
Статус: Offline
И действительно. Недостатки есть. На ЖК мониторах они особенно заметны, так как у них растр более крупный и разрешение намного хуже чем например у тех же самых ЭЛТ мониторов. Соответственно на ЭЛТ мониторах зернистость не столь заметна.
Второй недостаток, что плотность прозрачности получается жиденькой. Один из советов для тех, кто решится пользоваться таким способом - можно затемнить объект. Создастся иллюзия того, что прозрачность стала более плотной. Конечно как заметил toizy ущерб собственно будет.
Третий недостаток в том, что это маска. Пиксели чередуются между собой, потому если нажать случайно в облатсть, где отсутсвует точка, то курсор мыши просто "провалится" за окно.
Все же если уважаемые посетители и читатели решаться использовать для своих проектов данный метод, то я объясню как все это выполняется. Предупреждаю - это не опасно и абсалютно безвредно для вашего компьютера, если все сделаете правильно smile . Это я сказал чтоб никто не испугался по поводу недостатков.
Итак, метод:
Откройте любой растровый редактор, например Фотошоп (можно Стандартные->Paint). Залейте фон черным цветом - это будет в будущем маска для мултимедиа проекта (что такое маска читайте в уроках as-master). Теперь представим, что 0 - это белая точка, пиксель (самая маленькая точка которую можно поставить в редакторе). 1 - означает, что в этом месте нет никакой точки, т.е. там остается черный фон который мы не трогаем.
Теперь на залитом черном фоне проставляем 0 в шахматной последовательности. Получится вот так:
1010101010101010
0101010101010101
1010101010101010
0101010101010101
1010101010101010
0101010101010101
Напоминает шахматную доску? Ну...чем-то вроде да.
Такая последовательность черного и белого в маске и создает эффект полупрозрачности окна. Так можно создать маски различных форм, проставить такую шахматную сетку в тех местах, где это надо, соответственно, где не будет этой сетки и полупрозрачности не будет.
Заключение:
Чтож, а мы пока будем пользоваться этим методом до тех пор пока это не будет заменено соответственным плагином, или может в новой версии ММВ уже будет встроена способность прозрачности нужных объектов...но пока это мечты, а этот способ реален.


Иисус в нашей жизни № 1! Иисус живет в нас, Иисус мир победил!
 
as-masterДата: Четверг, 22 Марта 2007, 02:28 | Сообщение # 12
Группа: Удаленные





Quote (Дима)
Теперь на залитом черном фоне проставляем 0 в шахматной последовательности.
Получится вот так:
1010101010101010
0101010101010101
1010101010101010

Если у тебя растр ХОТЯ БЫ 100х100 пикселов, то закрашивать
всё это вручную через один пиксел - занятие неблагодарное smile

Поэтому в Фотошопе предусмотрена возможность создания паттернов (образцов).

Делается это так. Например, вам предстоит в дальнейшем заливать
какие-либо области изображения растром в виде "шахматной доски".

Сначала создаем этот растр. Создаем новый документ размером
2х2 пиксела. И раскрашиваем его в "шахматном порядке". Собственно,
закрасить черным предстоит всего два пиксела, стоящие по диагонали.
А два других останутся белыми.

Закрасили? Вот это и будет у вас шаблоном, образцом. Для того чтобы
получившийся рисунок действительно сделать шаблоном, нужно выполнить
пункт меню Edit - Define Pattern ("Определить образец"), откроется окно,
в котором ввести нужное имя образца без расширения (например, "шахматы").

Таким образом можно создать и назначить сколько угодно нужных образцов (паттернов).

Теперь создаем новый файл, выделяем некоторую область, которую нужно
"залить" образцом, и говорим меню Edit - Fill... Откроется окно заливки, в котором
выбираем заливку шаблоном (Pattern) из выпадающего списка, и с радостью
обнаруживаем там среди стандартных шаблонов фотошопа и тот, что мы создали сами.

Жмём ОК и наслаждаемся автоматически полученным результатом smile
Пример такого результата - в прищепке.

PS. Надеюсь, всё это я когда-нибудь опишу НА ДРУГОМ сайте, который,
дай Бог, всё-таки получится сделать...

Прикрепления: 38313049.zip (7.9 Kb)
 
as-masterДата: Четверг, 22 Марта 2007, 10:11 | Сообщение # 13
Группа: Удаленные





Коллеги!

Считаю, что предложенный Димой способ создания окна с полупрозрачными
областями нужно признать ноу-хау и опубликовать проект в соответствующем
разделе на сайте. Чтобы закрепить приоритет ноу-хау smile Несмотря на его недостатки.
Какие будут мнения?

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

Однако нельзя не сказать и о достоинстве этого способа, заключающемся в том,
что он не только не требует загрузки компьютерных ресурсов, но и будет
поддерживаться даже в Windows95 и с самыми дремучими видеокартами :)

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

Прикрепления: 95100980.zip (51.7 Kb)
 
ДимаДата: Четверг, 22 Марта 2007, 17:24 | Сообщение # 14
Новый участник
Группа: Пользователи
Сообщений: 13
Репутация: 1
Награды: 0
Статус: Offline
Справа более реалистично смотрится, как будто настоящие стёкла. А за заливку в Фотошопе отдельное спасибо, as-master! Я и не знал, что так просто можно делать (век живи - век учись). Я копировал и вставлял. Это более нудно, а теперь вообще все будет быстрее делаться. Класс! biggrin
Еще самое главное о масках:
Сохраняйте ваши маски в BMP формате (по крайней мере, старайтесь сохранять только в нем). JPEG портит их и даже с высоким качеством сжатия. А Bitmap формат скроет все изъяны по максимуму, так как он их и не создаст.
Черный цвет должен быть абсалютно черным, а белый - абсолютно белым.
Единственный минус от BMP - относительно большой размер файла. Но лучше ставить качество на первый план, чтоб все стремилось к идеалу. Все остальное, как и сказано в уроках, можно вставлять в проект в любых поддерживаемых форматах ММВ.


Иисус в нашей жизни № 1! Иисус живет в нас, Иисус мир победил!

Сообщение отредактировал Дима - Четверг, 22 Марта 2007, 18:22
 
OmarДата: Четверг, 22 Марта 2007, 18:08 | Сообщение # 15
Группа: Удаленные





Искренне извиняюсь, Димон, огромный Respect тебе
 
toizyДата: Четверг, 22 Марта 2007, 18:25 | Сообщение # 16
Группа: Удаленные





Quote (Дима)
Единственный минус от BMP - относительно большой размер файла

Вы в курсе, уважаемые (это я ко всем обращаюсь), что ММВ сжимает bmp файлы, если метод компрессии при сборке был отличным от "No Compression" или ZIP?
Правда я не знаю, относится ли это к маскам. Скорее всего, нет, но надо будет проверить.
 
ДимаДата: Четверг, 22 Марта 2007, 18:48 | Сообщение # 17
Новый участник
Группа: Пользователи
Сообщений: 13
Репутация: 1
Награды: 0
Статус: Offline
Я только что проверил - качество картинки, что является фоном, сильно исказилась. Цвета заменились и появились небрежности (пятна). А вот маска не тронута. Качество не изменилось. Думаю маску сжатие не трогает, но все же тестируем дальше...
Я использовал "Максимальное сжатие".

Добавил чуть позже
Ну, все же, думаю стоит использовать способ "Без сжатия". Так хоть верхний фон остается изначального вида без искажений и пятен. Но это для тех кто заботится о качестве графики своего окна. А маска какой была, такой осталась - не прибавился пиксель, не убавился.


Иисус в нашей жизни № 1! Иисус живет в нас, Иисус мир победил!

Сообщение отредактировал Дима - Пятница, 23 Марта 2007, 00:53
 
as-masterДата: Четверг, 22 Марта 2007, 20:53 | Сообщение # 18
Группа: Удаленные





Quote (Дима)
А за заливку в Фотошопе отдельное спасибо, as-master!

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

Quote (Дима)
Сохраняйте ваши маски в BMP формате

Те, кто не первый день работают с ММВ, знают об этом. У нас даже как-то отдельная тему была о масках для прозрачности, где говорили о том, как добиться наилучшего качества обтравки краёв.

Quote (Дима)
Единственный минус от BMP - относительно большой размер файла

На эту тему тут уже ответили. И от себя добавлю, что в ММВ собственные алгоритмы сжатия растровых изображений, включаемых в проект. Раньше я тоже оптимизировал графику перед вставкой ее в проект, для уменьшения размера будущего файла. А потом заметил. что ММВ сама сжимает картинки, и причем весьма умно. Даже служебную информацию, записываемые в JPG, она игнорирует и не сохраняет её. Так что, например, кнопки и фоны можно вставлять в любых форматах - хоть многослойные TIF. Размер в конечном счете, как правильно заметил toizy, будет зависеть от выбранной степени сжатия. Вот тогда и произойдет (или не произойдет) потеря качества.

А как влияет на размер файла именно маска - это легко проверить. Если есть желание и время smile

 
YURIYДата: Четверг, 22 Марта 2007, 21:07 | Сообщение # 19
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
Quote (as-master)
Коллеги!

Считаю, что предложенный Димой способ создания окна с полупрозрачнымиобластями нужно признать ноу-хау и опубликовать проект в соответствующемразделе на сайте. Чтобы закрепить приоритет ноу-хауНесмотря на его недостатки.Какие будут мнения?

Я только за! Это действительно интересное решени! А главное - оригинальное!



Вечная память Андрею Сергееву!
 
toizyДата: Четверг, 22 Марта 2007, 21:19 | Сообщение # 20
Группа: Удаленные





Я тоже за. Думаю, единогласным решением нашей правящей тройки следует признать данное решение ноу-хау (англ. "знаю, как" smile ) и опубликовать проект Димы на сайте. Всё!
 
as-masterДата: Пятница, 23 Марта 2007, 00:06 | Сообщение # 21
Группа: Удаленные





Quote (toizy)
Думаю, единогласным решением нашей правящей тройки
следует признать данное решение ноу-хау

Отлично. Завтра будет на сайте :)

 
ДимаДата: Пятница, 23 Марта 2007, 01:05 | Сообщение # 22
Новый участник
Группа: Пользователи
Сообщений: 13
Репутация: 1
Награды: 0
Статус: Offline
Quote (Omar)
Искренне извиняюсь, Димон, огромный Respect тебе

Все в норме, Омар. Все ж мы люди. А христиане, тем более, не обижаются. Ну нормальные, даже если и обижаются, то совсем не долго. По крайней мере я вообще не обижаюсь. И мое к тебе огромное Уважение. Будь всегда дружелюбен к здешним обитателям biggrin .


Иисус в нашей жизни № 1! Иисус живет в нас, Иисус мир победил!

Сообщение отредактировал Дима - Пятница, 23 Марта 2007, 01:15
 
as-masterДата: Пятница, 23 Марта 2007, 19:52 | Сообщение # 23
Группа: Удаленные





Проект Димы уже на сайте! :)
 
as-masterДата: Среда, 22 Августа 2007, 19:21 | Сообщение # 24
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
Вот еще способ, как получить растр для использования в качестве маски, если у вас нет Фотошопа.

Создаём BMP-файл в виндовсм Паинте 2х2 пиксел (2 чёрных по диагонали, 2 белых).
Потом открываем обычный Word и создаём в нём прямоугольник нужных размеров,
заходим в: Цвет заливки/Способы заливки/Текстура/Другая текстура и загружаем
наш 2х2 BMP. Потом берём любую программу для снятия скриншотов и делаем
необходимых размеров фотку, сохраняя её в BMP. Маска готова.

В прикрепленном файле - пример такой маски, сделанной в Ворде.

Советом поделился Дым.

Прикрепления: 25542781.zip (2.3 Kb)


Да пребудет с вами ММВ!
 
  • Страница 1 из 1
  • 1
Поиск: