0 / 0 / 0
Регистрация: 11.05.2020
Сообщений: 35

Затемнение/осветление отдельных каналов

22.05.2020, 19:45. Показов 4340. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
у меня получается, что мы берем фотографию и даем ему черно-белое изображение, также можно с помощью ползунков изменять затемнение и осветление отдельных каналов.
необходимо обеспечить возможность затемнения/осветления отдельных каналов (R, G, B)
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
from tkinter import *
from PIL import Image, ImageTk,ImageFont,ImageDraw
from tkinter import Menu
from tkinter import messagebox
from tkinter import filedialog
from tkinter.ttk import Combobox 
 
import cv2
import glob
import os
 
imgconv = None
label = None
 
def clicked2():
    value=slider1.get()
    lb2.configure(text=value)
    
def clicked3():
    value=slider2.get()
    lb3.configure(text=value)
 
def clicked4():
    value=slider3.get()
    lb4.configure(text=value)    
 
 
def open_image():
    global imgconv, label
    file = filedialog.askopenfilename()
    img = Image.open(file)
    img = img.resize((400, 400), Image.ANTIALIAS)
    imgconv = img
    img = ImageTk.PhotoImage(img)
    label = Label(baseWindow, image = img)
    label.image = img
    label.pack(side = LEFT ) 
    
    
def blackwhite():
    img = imgconv.convert('L')
    img = ImageTk.PhotoImage(img)
    label.configure(image=img)
    label.img = img
 
b,g,r = cv2.split(img)    
 
cv2.imshow('image',b)
cv2.waitKey(0)
cv2.imshow('image1',g)
cv2.waitKey(0)
cv2.imshow('image1',r)
cv2.waitKey(0)
 
cv.destroyAllWindows()
 
image=cv2.merge((b,g,r))
cv.imshow('image',image)
cv.waitKey(0)
cv2.destroyallWindows()
    
    
baseWindow = Tk()
baseWindow.title("PHOTO")
baseWindow.geometry("1000x500")
 
 
buttonl = Button(baseWindow, text="Открыть картинку", font="16" , padx="9",pady="8",command = open_image ).place(x=500,y=50)
 
button2 = Button(baseWindow, text="Ч.Б.", font="16" , padx="9",pady="8",command = blackwhite ).place(x=500,y=100)
 
slider1 = Scale(baseWindow, orient=HORIZONTAL, length=300, from_=-100, to=100, tickinterval=25, resolution=1)
slider1.place(x=500, y=150)
btn3 = Button(baseWindow, text="OK", command=clicked2, bg="yellow", fg="black")
btn3.place(x=810, y=170)
lb2=Label(baseWindow, text="Open file", font=("Arial Bold", 10))
lb2.place(x=860, y=180)
 
slider2 = Scale(baseWindow, orient=HORIZONTAL, length=300, from_=-100, to=100, tickinterval=25, resolution=1)
slider2.place(x=500, y=220)
btn4 = Button(baseWindow, text="OK", command=clicked3, bg="yellow", fg="black")
btn4.place(x=810, y=230)
lb3=Label(baseWindow, text="Open file", font=("Arial Bold", 10))
lb3.place(x=860, y=240)
 
slider3 = Scale(baseWindow, orient=HORIZONTAL, length=300, from_=-100, to=100, tickinterval=25, resolution=1)
slider3.place(x=500, y=280)
btn5 = Button(baseWindow, text="OK", command=clicked4, bg="yellow", fg="black")
btn5.place(x=810, y=295)
lb4=Label(baseWindow, text="Open file", font=("Arial Bold", 10))
lb4.place(x=860, y=295)
    
baseWindow.mainloop()
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.05.2020, 19:45
Ответы с готовыми решениями:

затемнение/осветление отдельных каналов (R, G, B)
Мне задали затемнение/осветление отдельных каналов (R, G, B), но я не знаю по какой формуле это делается и как это работает. Тип я понял...

Затемнение картинки или осветление, при наведении на нее.
Нашел такой CSS код: img { opacity:0.8; -moz-opacity:0.8; filter: alpha(opacity=80) black; -khtml-opacity: 0.8; ...

Осветление картинки в picturebox
Пытаюсь осветлить картинку в picturebox, но ничего не происходит, кнопка через stripmenu подскажите пожалуйста в чем проблема ...

11
0 / 0 / 0
Регистрация: 11.05.2020
Сообщений: 35
24.05.2020, 14:28  [ТС]
почему ругается?
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
from tkinter import *
from PIL import Image, ImageTk,ImageFont,ImageDraw
from tkinter import Menu
from tkinter import messagebox
from tkinter import filedialog
from tkinter.ttk import Combobox 
 
import cv2
import glob
import os
 
imgconv = None
label = None
 
 
 
def clicked2():
    value=slider1.get()
    lb2.configure(text=value)
    
def clicked3():
    value=slider2.get()
    lb3.configure(text=value)
 
def clicked4():
    value=slider3.get()
    lb4.configure(text=value)    
 
 
def open_image():
    global imgconv, label
    file = filedialog.askopenfilename()
    img = Image.open(file)
    img = img.resize((400, 400), Image.ANTIALIAS)
    imgconv = img
    img = ImageTk.PhotoImage(img)
    label = Label(baseWindow, image = img)
    label.image = img
    label.pack(side = LEFT ) 
    
    
def blackwhite():
    img = imgconv.convert('L')
    img = ImageTk.PhotoImage(img)
    label.configure(image=img)
    label.img = img
    
def R():
    source = img.split()
    R, G, B = 0, 1, 2
    source[R]
    mask = source[R].point(lambda i: i < 100 and 255)
    out = source[R].point(lambda i: i * 0.7)
    source[R].paste(out, None, mask)
    img = Image.merge(img.mode, source)
    img = ImageTk.PhotoImage(img)
    label.configure(image=img)
    label.img = img
    
baseWindow = Tk()
baseWindow.title("PHOTO")
baseWindow.geometry("1000x500")
 
 
buttonl = Button(baseWindow, text="Открыть картинку", font="16" , padx="9",pady="8",command = open_image ).place(x=500,y=50)
 
button2 = Button(baseWindow, text="Ч.Б.", font="16" , padx="9",pady="8",command = blackwhite ).place(x=500,y=100)
 
button3 = Button(baseWindow, text="R.", font="16" , padx="9",pady="8",command = R ).place(x=500,y=150)
    
baseWindow.mainloop()
Добавлено через 1 минуту
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\anacon\lib\tkinter\__init__.py", line 1705, in __call__
return self.func(*args)
File "<ipython-input-7-fd8bb80552f0>", line 49, in R
img = ImageTk.PhotoImage(img)
UnboundLocalError: local variable 'img' referenced before assignment
0
1293 / 677 / 367
Регистрация: 07.01.2019
Сообщений: 2,302
24.05.2020, 17:20
Потому что img это локальная переменная в каждой функции и функция R() не знает о переменных img в других функциях
0
0 / 0 / 0
Регистрация: 11.05.2020
Сообщений: 35
25.05.2020, 09:57  [ТС]
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
from tkinter import *
from tkinter.ttk import Combobox
from tkinter import  messagebox
from tkinter import filedialog
from PIL import ImageTk, Image, ImageDraw, ImageFilter
 
 
 
def open_file():
    file = filedialog.askopenfilename(filetypes=(("Image files", "*.jpg"), ("All files", "*.jpg;*.png")))
    label1.configure(text=file)
    load1 = Image.open(file)
    img1 = ImageTk.PhotoImage(load1)
    initil = Label(window, image=img1)
    initil.image = img1
    initil.place(x=10, y=130)
    res = chk1.get()
    if res==True:
        picture = Toplevel()
        picture.title("Image")
        load = Image.open(file)
        img = ImageTk.PhotoImage(load)
        label=Label(picture, image = img)
        label.pack()
        picture.mainloop()
 
 
 
def gray():
    res = label1.cget("text")
    image = Image.open(res)  # Открываем изображение.
    draw = ImageDraw.Draw(image)  # Создаем инструмент для рисования.
    width = image.size[0]  # Определяем ширину.
    height = image.size[1]  # Определяем высоту.
    pix = image.load()  # Выгружаем значения пикселей.
 
    
 
    with Image.open(res) as im:
    img1 = im.convert("L")
    img1 = ImageTk.PhotoImage(image)
    initil1 = Label(window, image=img1)
    initil1.image = img1
    initil1.place(x=700, y=130)
 
 
    btn2 = Button(window, text="Сохранить изображение PNG", command=image.save("resultpng.png", "PNG"), bg="white", fg="black")
    btn2.place(x=600, y=30)
 
    btn4 = Button(window, text="Сохранить изображение JPEG", command=image.save("resultjpg.jpg", "JPEG"), bg="white",
                  fg="black")
    btn4.place(x=790, y=30)
 
    res = chk2.get()
    if res == True:
        picture = Toplevel()
        picture.title("ImageGray")
        img = ImageTk.PhotoImage(image)
        label = Label(picture, image=img)
        label.pack()
        picture.mainloop()
 
 
 
def rgb():
    picture = Toplevel()
    picture.title("Image")
    load = Image.open(label1.cget("text"))
    source = load.split()
    R, G, B = 0, 1, 2
    cbox=cb.get()
    if cbox=="R":
        load = source[R]
    if cbox=="G":
        load = source[G]
    if cbox=="B":
        load = source[B]
 
 
    img = ImageTk.PhotoImage(load)
    label = Label(picture, image=img)
    label.pack()
    picture.mainloop()
 
def click():
    picture = Toplevel()
    picture.title("Image")
 
    load = Image.open(label1.cget("text"))
    source = load.split()
    R, G, B = 0, 1, 2
    cbox = cb.get()
    if cbox=="R":
        load = source[R]
    if cbox=="G":
        load = source[G]
    if cbox=="B":
        load = source[B]
 
    a=txt2.get()
    out = load.point(lambda i: i * float(a))
 
    img = ImageTk.PhotoImage(out)
    label = Label(picture, image=img)
    label.pack()
    btn9 = Button(window, text="Сохранить изображение PNG", command=out.save("result_png.png", "PNG"), bg="white",fg="black")
    btn9.place(x=980, y=30)
    btn8 = Button(window, text="Сохранить изображение JPEG", command=out.save("result_jpg.jpg", "JPEG"), bg="white", fg="black")
    btn8.place(x=1170, y=30)
    picture.mainloop()
 
 
window = Tk()
window.title("Photoshop.1.0")
window.geometry('1500x700')
 
btn1 = Button(window, text="Открыть изображение", command=open_file, bg="white", fg="black", padx=20, pady=8, font=17)
btn1.place(x=10, y=20)
 
chk1=BooleanVar()
chk1.set(False)
open_new_window = Checkbutton(window, text="Открыть изображение в новом окне?", var=chk1)
open_new_window.place(x=300, y=30)
 
chk2=BooleanVar()
chk2.set(False)
open_new_window1 = Checkbutton(window, text="Открыть изображение в новом окне?", var=chk2)
open_new_window1.place(x=250, y=85)
 
label1 = Label(text="Канал для затемнения/осветления", fg="#eee", bg="#333")
label1.place(x=490, y=85)
 
cb=Combobox(window)
cb['values'] = ["R", "G", "B"]
cb.current(0)
cb.place(x=700, y=85)
 
btn6 = Button(window, text="ОК", command=rgb,   bg="white", fg="black")
btn6.place(x=850, y=80)
 
btn3 = Button(window, text="Сделать изображение черно-белым", command=gray,   bg="white", fg="black")
btn3.place(x=10, y=80)
 
lb5=Label(window, text="Введите значение от 0.1 до 10")
lb5.place(x=900, y=85)
 
txt2=Entry(window, width=10)
txt2.focus()
txt2.place(x=1080, y=85)
 
btn5 = Button(window, text="ОК", command=click,   bg="white", fg="black")
btn5.place(x=1150, y=80)
 
 
label1 = Label(text="Hello Python", fg="#eee")
label1.pack()
 
 
 
window.mainloop()
немного по другому, почему градация серого не работает?

File "<ipython-input-25-fad050cf88e7>", line 40
img1 = im.convert("L")
^
IndentationError: expected an indented block
0
1293 / 677 / 367
Регистрация: 07.01.2019
Сообщений: 2,302
25.05.2020, 12:56
Строка 40 на том же уровне, что и 39, а должна быть сдвинута на один таб и ниже строки
0
0 / 0 / 0
Регистрация: 11.05.2020
Сообщений: 35
25.05.2020, 13:09  [ТС]
в принципе получилось(ошибка ушла), но градацию серого не выдает
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
def gray():
    res = label1.cget("text")
    image = Image.open(res)  # Открываем изображение.
    draw = ImageDraw.Draw(image)  # Создаем инструмент для рисования.
    width = image.size[0]  # Определяем ширину.
    height = image.size[1]  # Определяем высоту.
    pix = image.load()  # Выгружаем значения пикселей.
 
    
 
    with Image.open(res) as im:
        image1 = im.convert("L")
        img1 = ImageTk.PhotoImage(image)
        initil1 = Label(window, image=img1)
        initil1.image = img1
        initil1.place(x=700, y=130)
 
 
    btn2 = Button(window, text="Сохранить изображение PNG", command=image.save("resultpng.png", "PNG"), bg="white", fg="black")
    btn2.place(x=600, y=30)
 
    btn4 = Button(window, text="Сохранить изображение JPEG", command=image.save("resultjpg.jpg", "JPEG"), bg="white",
                  fg="black")
    btn4.place(x=790, y=30)
 
    res = chk2.get()
    if res == True:
        picture = Toplevel()
        picture.title("ImageGray")
        img = ImageTk.PhotoImage(image)
        label = Label(picture, image=img)
        label.pack()
        picture.mainloop()
0
1293 / 677 / 367
Регистрация: 07.01.2019
Сообщений: 2,302
25.05.2020, 13:20
Надо всю программу посмотреть
0
0 / 0 / 0
Регистрация: 11.05.2020
Сообщений: 35
25.05.2020, 13:29  [ТС]
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
from tkinter import *
from tkinter.ttk import Combobox
from tkinter import  messagebox
from tkinter import filedialog
from PIL import ImageTk, Image, ImageDraw, ImageFilter
 
 
 
def open_file():
    file = filedialog.askopenfilename(filetypes=(("Image files", "*.jpg"), ("All files", "*.jpg;*.png")))
    label1.configure(text=file)
    load1 = Image.open(file)
    img1 = ImageTk.PhotoImage(load1)
    initil = Label(window, image=img1)
    initil.image = img1
    initil.place(x=10, y=130)
    res = chk1.get()
    if res==True:
        picture = Toplevel()
        picture.title("Image")
        load = Image.open(file)
        img = ImageTk.PhotoImage(load)
        label=Label(picture, image = img)
        label.pack()
        picture.mainloop()
 
 
 
def gray():
    res = label1.cget("text")
    image = Image.open(res)  # Открываем изображение.
    draw = ImageDraw.Draw(image)  # Создаем инструмент для рисования.
    width = image.size[0]  # Определяем ширину.
    height = image.size[1]  # Определяем высоту.
    pix = image.load()  # Выгружаем значения пикселей.
 
    
 
    with Image.open(res) as im:
        image1 = im.convert("L")
    img1 = ImageTk.PhotoImage(image)
    initil1 = Label(window, image=img1)
    initil1.image = img1
    initil1.place(x=700, y=130)
 
 
    btn2 = Button(window, text="Сохранить изображение PNG", command=image.save("resultpng.png", "PNG"), bg="white", fg="black")
    btn2.place(x=600, y=30)
 
    btn4 = Button(window, text="Сохранить изображение JPEG", command=image.save("resultjpg.jpg", "JPEG"), bg="white",
                  fg="black")
    btn4.place(x=790, y=30)
 
    res = chk2.get()
    if res == True:
        picture = Toplevel()
        picture.title("ImageGray")
        img = ImageTk.PhotoImage(image)
        label = Label(picture, image=img)
        label.pack()
        picture.mainloop()
 
 
 
def rgb():
    picture = Toplevel()
    picture.title("Image")
    load = Image.open(label1.cget("text"))
    source = load.split()
    R, G, B = 0, 1, 2
    cbox=cb.get()
    if cbox=="R":
        load = source[R]
    if cbox=="G":
        load = source[G]
    if cbox=="B":
        load = source[B]
 
 
    img = ImageTk.PhotoImage(load)
    label = Label(picture, image=img)
    label.pack()
    picture.mainloop()
 
def click():
    picture = Toplevel()
    picture.title("Image")
 
    load = Image.open(label1.cget("text"))
    source = load.split()
    R, G, B = 0, 1, 2
    cbox = cb.get()
    if cbox=="R":
        load = source[R]
    if cbox=="G":
        load = source[G]
    if cbox=="B":
        load = source[B]
 
    a=txt2.get()
    out = load.point(lambda i: i * float(a))
 
    img = ImageTk.PhotoImage(out)
    label = Label(picture, image=img)
    label.pack()
    btn9 = Button(window, text="Сохранить изображение PNG", command=out.save("result_png.png", "PNG"), bg="white",fg="black")
    btn9.place(x=980, y=30)
    btn8 = Button(window, text="Сохранить изображение JPEG", command=out.save("result_jpg.jpg", "JPEG"), bg="white", fg="black")
    btn8.place(x=1170, y=30)
    picture.mainloop()
 
 
window = Tk()
window.title("Photoshop.1.0")
window.geometry('1500x700')
 
btn1 = Button(window, text="Открыть изображение", command=open_file, bg="white", fg="black", padx=20, pady=8, font=17)
btn1.place(x=10, y=20)
 
chk1=BooleanVar()
chk1.set(False)
open_new_window = Checkbutton(window, text="Открыть изображение в новом окне?", var=chk1)
open_new_window.place(x=300, y=30)
 
chk2=BooleanVar()
chk2.set(False)
open_new_window1 = Checkbutton(window, text="Открыть изображение в новом окне?", var=chk2)
open_new_window1.place(x=250, y=85)
 
label1 = Label(text="Канал для затемнения/осветления", fg="#eee", bg="#333")
label1.place(x=490, y=85)
 
cb=Combobox(window)
cb['values'] = ["R", "G", "B"]
cb.current(0)
cb.place(x=700, y=85)
 
btn6 = Button(window, text="ОК", command=rgb,   bg="white", fg="black")
btn6.place(x=850, y=80)
 
btn3 = Button(window, text="Сделать изображение черно-белым", command=gray,   bg="white", fg="black")
btn3.place(x=10, y=80)
 
lb5=Label(window, text="Введите значение от 0.1 до 10")
lb5.place(x=900, y=85)
 
txt2=Entry(window, width=10)
txt2.focus()
txt2.place(x=1080, y=85)
 
btn5 = Button(window, text="ОК", command=click,   bg="white", fg="black")
btn5.place(x=1150, y=80)
 
 
label1 = Label(text="Hello Python", fg="#eee")
label1.pack()
 
 
 
window.mainloop()
0
1293 / 677 / 367
Регистрация: 07.01.2019
Сообщений: 2,302
25.05.2020, 13:54
Так работает все, только кнопки перепутаны
0
0 / 0 / 0
Регистрация: 11.05.2020
Сообщений: 35
25.05.2020, 14:37  [ТС]
подскажите пожалуйста какие неправильные, чет тоже дошло, но не могу найти в коде

Добавлено через 32 минуты
если про это, то там все правильно
Python
1
2
3
4
5
btn6 = Button(window, text="ОК", command=rgb,   bg="white", fg="black")
btn6.place(x=850, y=80)
 
btn3 = Button(window, text="Сделать изображение черно-белым", command=gray,   bg="white", fg="black")
btn3.place(x=10, y=80)
0
1293 / 677 / 367
Регистрация: 07.01.2019
Сообщений: 2,302
25.05.2020, 14:42
Цитата Сообщение от MaxPytline Посмотреть сообщение
btn3 = Button(window, text="Сделать изображение черно-белым", command=gray,   bg="white", fg="black")
btn3.place(x=10, y=80)
Но эта кнопка не делает изображение черно-белым
0
0 / 0 / 0
Регистрация: 11.05.2020
Сообщений: 35
25.05.2020, 14:45  [ТС]
ну это и должна делать черно белой
я думаю что тут ошибка, но где не пойму
Цитата Сообщение от MaxPytline Посмотреть сообщение
def gray():
    res = label1.cget("text")
    image = Image.open(res)  # Открываем изображение.
    draw = ImageDraw.Draw(image)  # Создаем инструмент для рисования.
    width = image.size[0]  # Определяем ширину.
    height = image.size[1]  # Определяем высоту.
    pix = image.load()  # Выгружаем значения пикселей.
with Image.open(res) as im:
        image1 = im.convert("L")
    img1 = ImageTk.PhotoImage(image)
    initil1 = Label(window, image=img1)
    initil1.image = img1
    initil1.place(x=700, y=130)
btn2 = Button(window, text="Сохранить изображение PNG", command=image.save("resultpng.png", "PNG"), bg="white", fg="black")
    btn2.place(x=600, y=30)
btn4 = Button(window, text="Сохранить изображение JPEG", command=image.save("resultjpg.jpg", "JPEG"), bg="white",
                  fg="black")
    btn4.place(x=790, y=30)
res = chk2.get()
    if res == True:
        picture = Toplevel()
        picture.title("ImageGray")
        img = ImageTk.PhotoImage(image)
        label = Label(picture, image=img)
        label.pack()
        picture.mainloop()
Добавлено через 1 минуту
Цитата Сообщение от MaxPytline Посмотреть сообщение
btn3 = Button(window, text="Сделать изображение черно-белым", command=gray,   bg="white", fg="black")
btn3.place(x=10, y=80)
а это выдает каналы
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.05.2020, 14:45
Помогаю со студенческими работами здесь

Осветление участка картинки
Здравствуйте. Вспомните 8bit-ные игрушки с подземельями. Повсюду однотипные текстурки и факела. Причём чем ближе текстурка к факелу тем...

Осветление пикселей и вывод на экран
Здравствуйте, я делаю программу в которой можно осветлить или затемнить изображение. Я использовал вот этот топик для решения своей...

Осветление изображение при скроллинге
Я только начинаю в области веб, толком не понимаю как реализовать и подключать скрипты, пользуюсь только готовыми. задача: написать...

Затемнение
вот посмотрите ссылку http://www.mult.ru/projects/mas/mults/mult_33.html попробуйте открыть мультик в большем размере. Меня интересует...

Затемнение экрана
Всем доброго времени суток! С WinForms пока мало знаком, но необходимо решить одну задачу. Я думаю,что каждый видел затемнение...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

Новые блоги и статьи
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru