bluedxca93
Anmeldungsdatum: 29. Dezember 2011
Beiträge: 367
|
Hallo,
ich moechte themes fuer unity und Linux Mint schreiben.
Leider gibt es in gtk3 ( also leider auch in unity ) folgendes Problem:
Gtk3 ist unfähig jegliches Bildchen gleichzeitig als Rand und als Hintergrund zu definieren. Farbverläufe funktionieren dagegen erstaunlich gut.
Hab mal versucht ein Bitmap in eine Farbdefiniton umzuwandeln (66x19px): 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 | convert tab-top-active.png txt:- |
tail -n +2 | sed 's!, !,!g' |
while read position color colorhex srgbavalue junk; do
echo "$position $colorhex"
done > y.txt
p0=`awk 'BEGIN {printf "%4.3f\n",0/18}' `
p1=`awk 'BEGIN {printf "%4.3f\n",1/18}' `
p2=`awk 'BEGIN {printf "%4.3f\n",2/18}' `
p3=`awk 'BEGIN {printf "%4.3f\n",3/18}' `
p4=`awk 'BEGIN {printf "%4.3f\n",4/18}' `
p5=`awk 'BEGIN {printf "%4.3f\n",5/18}' `
p6=`awk 'BEGIN {printf "%4.3f\n",6/18}' `
p7=`awk 'BEGIN {printf "%4.3f\n",7/18}' `
p8=`awk 'BEGIN {printf "%4.3f\n",8/18}' `
p9=`awk 'BEGIN {printf "%4.3f\n",9/18}' `
p10=`awk 'BEGIN {printf "%4.3f\n",10/18}' `
p11=`awk 'BEGIN {printf "%4.3f\n",11/18}' `
p12=`awk 'BEGIN {printf "%4.3f\n",12/18}' `
p13=`awk 'BEGIN {printf "%4.3f\n",13/18}' `
p14=`awk 'BEGIN {printf "%4.3f\n",14/18}' `
p15=`awk 'BEGIN {printf "%4.3f\n",15/18}' `
p16=`awk 'BEGIN {printf "%4.3f\n",16/18}' `
p17=`awk 'BEGIN {printf "%4.3f\n",17/18}' `
p18=`awk 'BEGIN {printf "%4.3f\n",18/18}' `
c0=`grep 32,0: y.txt | sed 's!32,0: !!g'`
c1=`grep 32,1: y.txt | sed 's!32,1: !!g'`
c2=`grep 32,2: y.txt | sed 's!32,2: !!g'`
c3=`grep 32,3: y.txt | sed 's!32,3: !!g'`
c4=`grep 32,4: y.txt | sed 's!32,4: !!g'`
c5=`grep 32,5: y.txt | sed 's!32,5: !!g'`
c6=`grep 32,6: y.txt | sed 's!32,6: !!g'`
c7=`grep 32,7: y.txt | sed 's!32,7: !!g'`
c8=`grep 32,8: y.txt | sed 's!32,8: !!g'`
c9=`grep 32,9: y.txt | sed 's!32,9: !!g'`
c10=`grep 32,10: y.txt | sed 's!32,10: !!g'`
c11=`grep 32,11: y.txt | sed 's!32,11: !!g'`
c12=`grep 32,12: y.txt | sed 's!32,12: !!g'`
c13=`grep 32,13: y.txt | sed 's!32,13: !!g'`
c14=`grep 32,14: y.txt | sed 's!32,14: !!g'`
c15=`grep 32,15: y.txt | sed 's!32,15: !!g'`
c16=`grep 32,16: y.txt | sed 's!32,16: !!g'`
c17=`grep 32,17: y.txt | sed 's!32,17: !!g'`
c18=`grep 32,18: y.txt | sed 's!32,18: !!g'`
echo "background-image: -gtk-gradient (linear, left top, left bottom,"
echo " from ($c0),"
echo " color-stop ($p1,$c1),"
echo " color-stop ($p2,$c2),"
echo " color-stop ($p3,$c3),"
echo " color-stop ($p4,$c4),"
echo " color-stop ($p5,$c5),"
echo " color-stop ($p6,$c6),"
echo " color-stop ($p7,$c7),"
echo " color-stop ($p8,$c8),"
echo " color-stop ($p9,$c9),"
echo " color-stop ($p10,$c10),"
echo " color-stop ($p11,$c11),"
echo " color-stop ($p12,$c12),"
echo " color-stop ($p13,$c13),"
echo " color-stop ($p14,$c14),"
echo " color-stop ($p15,$c15),"
echo " color-stop ($p16,$c16),"
echo " color-stop ($p17,$c17),"
echo " to ($c18));"
|
.
Auch verträgt unity selbst im Fenstertitel keine Hintergrundbilder. Selbst dort muss mit Farbverläufen gearbeitet werden warum ???
Kann man nicht einfach alles in eine gresource Packen und es funktioniert. Kann den eventuellen Geschwindigkwitsvorteil nicht nachvollziehen, da unity ja auch nicht ressourcenschonend Programmiert ist. Naja vlt. kann mir i. jemeand helfen das Skript zu veralgmeineren und dann istunity wieder ein brauchbares Programm.
mfg bluedxca93
|
bluedxca93
(Themenstarter)
Anmeldungsdatum: 29. Dezember 2011
Beiträge: 367
|
Hi,
hat sich mittlerweile fast erledigt. Ueber 30 px gibt es selten bei gtk2 Elementen. Außerdem muessten 30 Bildpunkte ja auch normalerweise reichen um einen Farbverlauf zu analysieren. Unity Fensterleisten sind jetzt wieder genauso leicht zu erstellen wie die von metacity.Außerdem lässt sich jetzt auch andere gtk2 Bildchen leichter nach gtk3 portieren. Randdefinitionen + vom Skript analysierter Farbverlauf und schon sehen fast alle themes wieder gut aus. Das einzige Problem ist das das Skript noch i. wie verkürzt werden könnte und für andere Bildgrößen automatisch angepasst werden sollte.
Empfohlene Bildgröße für das Skript 220x30
Richtung des zu erkennenden Farbverlauf: von oben nach unten
RGBA Unterstützung : Nein nur rgb
Bildnahme: input.png
Ausgabe direkt in den Terminalbildschirm. 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 | convert input.png txt:- |
tail -n +2 | sed 's!, !,!g' | sed 's!, !,!g' | sed 's!( !(!g' | sed 's!( !(!g' |
while read position color colorhex srgbavalue junk; do
echo "$position $colorhex"
done > y.txt
p0=`awk 'BEGIN {printf "%4.3f\n",0/30}' `
p1=`awk 'BEGIN {printf "%4.3f\n",1/30}' `
p2=`awk 'BEGIN {printf "%4.3f\n",2/30}' `
p3=`awk 'BEGIN {printf "%4.3f\n",3/30}' `
p4=`awk 'BEGIN {printf "%4.3f\n",4/30}' `
p5=`awk 'BEGIN {printf "%4.3f\n",5/30}' `
p6=`awk 'BEGIN {printf "%4.3f\n",6/30}' `
p7=`awk 'BEGIN {printf "%4.3f\n",7/30}' `
p8=`awk 'BEGIN {printf "%4.3f\n",8/30}' `
p9=`awk 'BEGIN {printf "%4.3f\n",9/30}' `
p10=`awk 'BEGIN {printf "%4.3f\n",10/30}' `
p11=`awk 'BEGIN {printf "%4.3f\n",11/30}' `
p12=`awk 'BEGIN {printf "%4.3f\n",12/30}' `
p13=`awk 'BEGIN {printf "%4.3f\n",13/30}' `
p14=`awk 'BEGIN {printf "%4.3f\n",14/30}' `
p15=`awk 'BEGIN {printf "%4.3f\n",15/30}' `
p16=`awk 'BEGIN {printf "%4.3f\n",16/30}' `
p17=`awk 'BEGIN {printf "%4.3f\n",17/30}' `
p18=`awk 'BEGIN {printf "%4.3f\n",18/30}' `
p19=`awk 'BEGIN {printf "%4.3f\n",19/30}' `
p20=`awk 'BEGIN {printf "%4.3f\n",20/30}' `
p21=`awk 'BEGIN {printf "%4.3f\n",21/30}' `
p22=`awk 'BEGIN {printf "%4.3f\n",22/30}' `
p23=`awk 'BEGIN {printf "%4.3f\n",23/30}' `
p24=`awk 'BEGIN {printf "%4.3f\n",24/30}' `
p25=`awk 'BEGIN {printf "%4.3f\n",25/30}' `
p26=`awk 'BEGIN {printf "%4.3f\n",26/30}' `
p27=`awk 'BEGIN {printf "%4.3f\n",27/30}' `
p28=`awk 'BEGIN {printf "%4.3f\n",28/30}' `
p29=`awk 'BEGIN {printf "%4.3f\n",29/30}' `
p30=`awk 'BEGIN {printf "%4.3f\n",30/30}' `
c0=`grep 110,0: y.txt | sed 's!110,0: !!g'`
c1=`grep 110,1: y.txt | sed 's!110,1: !!g'`
c2=`grep 110,2: y.txt | sed 's!110,2: !!g'`
c3=`grep 110,3: y.txt | sed 's!110,3: !!g'`
c4=`grep 110,4: y.txt | sed 's!110,4: !!g'`
c5=`grep 110,5: y.txt | sed 's!110,5: !!g'`
c6=`grep 110,6: y.txt | sed 's!110,6: !!g'`
c7=`grep 110,7: y.txt | sed 's!110,7: !!g'`
c8=`grep 110,8: y.txt | sed 's!110,8: !!g'`
c9=`grep 110,9: y.txt | sed 's!110,9: !!g'`
c10=`grep 110,10: y.txt | sed 's!110,10: !!g'`
c11=`grep 110,11: y.txt | sed 's!110,11: !!g'`
c12=`grep 110,12: y.txt | sed 's!110,12: !!g'`
c13=`grep 110,13: y.txt | sed 's!110,13: !!g'`
c14=`grep 110,14: y.txt | sed 's!110,14: !!g'`
c15=`grep 110,15: y.txt | sed 's!110,15: !!g'`
c16=`grep 110,16: y.txt | sed 's!110,16: !!g'`
c17=`grep 110,17: y.txt | sed 's!110,17: !!g'`
c18=`grep 110,18: y.txt | sed 's!110,18: !!g'`
c19=`grep 110,19: y.txt | sed 's!110,19: !!g'`
c20=`grep 110,20: y.txt | sed 's!110,20: !!g'`
c21=`grep 110,21: y.txt | sed 's!110,21: !!g'`
c22=`grep 110,22: y.txt | sed 's!110,22: !!g'`
c23=`grep 110,23: y.txt | sed 's!110,23: !!g'`
c24=`grep 110,24: y.txt | sed 's!110,24: !!g'`
c25=`grep 110,25: y.txt | sed 's!110,25: !!g'`
c26=`grep 110,26: y.txt | sed 's!110,26: !!g'`
c27=`grep 110,27: y.txt | sed 's!110,27: !!g'`
c28=`grep 110,28: y.txt | sed 's!110,28: !!g'`
c29=`grep 110,29: y.txt | sed 's!110,29: !!g'`
c30=`grep 110,30: y.txt | sed 's!110,30: !!g'`
echo "background-image: -gtk-gradient (linear, left top, left bottom,"
echo " from ($c0),"
echo " color-stop ($p1,$c1),"
echo " color-stop ($p2,$c2),"
echo " color-stop ($p3,$c3),"
echo " color-stop ($p4,$c4),"
echo " color-stop ($p5,$c5),"
echo " color-stop ($p6,$c6),"
echo " color-stop ($p7,$c7),"
echo " color-stop ($p8,$c8),"
echo " color-stop ($p9,$c9),"
echo " color-stop ($p10,$c10),"
echo " color-stop ($p11,$c11),"
echo " color-stop ($p12,$c12),"
echo " color-stop ($p13,$c13),"
echo " color-stop ($p14,$c14),"
echo " color-stop ($p15,$c15),"
echo " color-stop ($p16,$c16),"
echo " color-stop ($p17,$c17),"
echo " color-stop ($p18,$c18),"
echo " color-stop ($p19,$c19),"
echo " color-stop ($p20,$c20),"
echo " color-stop ($p21,$c21),"
echo " color-stop ($p22,$c22),"
echo " color-stop ($p23,$c23),"
echo " color-stop ($p24,$c24),"
echo " color-stop ($p25,$c25),"
echo " color-stop ($p26,$c26),"
echo " color-stop ($p27,$c27),"
echo " color-stop ($p28,$c28),"
echo " color-stop ($p29,$c29),"
echo " to ($c30));"
|
mfg bluedxca93
|