Skip to content

Commit 1e95371

Browse files
committed
update
1 parent e10eca1 commit 1e95371

File tree

678 files changed

+30
-24
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

678 files changed

+30
-24
lines changed

generate.py

Lines changed: 30 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,35 @@
1+
import sys
12
from PIL import Image
23

34

4-
WIDTH = 150
5-
HEIGHT = 90
5+
WIDTH = 260
6+
HEIGHT = 145
7+
COLORMODE = "RGBA"
8+
EXTENSION = ".png"
9+
10+
srcdir = sys.argv[1]
611

712

813
BASE_IMAGES = {
9-
'sun': Image.open('srcimgs/sun.png'),
10-
'cloud': Image.open('srcimgs/cloud.png'),
11-
'rain': Image.open('srcimgs/rain.png'),
12-
'snow': Image.open('srcimgs/snow.png'),
13-
'mist': Image.open('srcimgs/mist.png'),
14-
'rain_thunder': Image.open('srcimgs/rain_thunder.png'),
15-
'snow_thunder': Image.open('srcimgs/snow_thunder.png'),
16-
'rain_heavy': Image.open('srcimgs/rain_heavy.png'),
17-
'snow_heavy': Image.open('srcimgs/snow_heavy.png'),
18-
'rain_wind': Image.open('srcimgs/rain_wind.png'),
19-
'snow_wind': Image.open('srcimgs/snow_wind.png'),
20-
'rain_heavy_wind': Image.open('srcimgs/rain_heavy_wind.png'),
21-
'rain_or_snow': Image.open('srcimgs/rain_and_snow.png'),
22-
'snow_or_rain': Image.open('srcimgs/rain_and_snow.png'),
23-
'rain_and_snow': Image.open('srcimgs/rain_and_snow.png'),
24-
'night_fair': Image.open('srcimgs/fair_night.png'),
14+
'sun': Image.open(f'{srcdir}/sun.png'),
15+
'cloud': Image.open(f'{srcdir}/cloud.png'),
16+
'rain': Image.open(f'{srcdir}/rain.png'),
17+
'snow': Image.open(f'{srcdir}/snow.png'),
18+
'mist': Image.open(f'{srcdir}/mist.png'),
19+
'rain_thunder': Image.open(f'{srcdir}/rain_thunder.png'),
20+
'snow_thunder': Image.open(f'{srcdir}/snow_thunder.png'),
21+
'rain_heavy': Image.open(f'{srcdir}/rain_heavy.png'),
22+
'snow_heavy': Image.open(f'{srcdir}/snow_heavy.png'),
23+
'rain_wind': Image.open(f'{srcdir}/rain_wind.png'),
24+
'snow_wind': Image.open(f'{srcdir}/snow_wind.png'),
25+
'rain_heavy_wind': Image.open(f'{srcdir}/rain_heavy_wind.png'),
26+
'rain_or_snow': Image.open(f'{srcdir}/rain_and_snow.png'),
27+
'snow_or_rain': Image.open(f'{srcdir}/rain_and_snow.png'),
28+
'rain_and_snow': Image.open(f'{srcdir}/rain_and_snow.png'),
29+
'night_fair': Image.open(f'{srcdir}/fair_night.png'),
2530
}
2631

27-
MOD_TR_IMG = Image.open('srcimgs/tr.png')
32+
MOD_TR_IMG = Image.open(f'{srcdir}/tr.png')
2833

2934

3035
def composite(src, dst, pos, size=None):
@@ -42,12 +47,13 @@ def make_one(weather):
4247
return composite(img1, out, (left, 0), (HEIGHT, HEIGHT))
4348

4449

45-
def make_two(weather_from, weather_to):
50+
def make_two(weather_from, mod, weather_to):
4651
out = Image.new('RGBA', (WIDTH, HEIGHT), (255, 255, 255, 0))
4752
img1 = BASE_IMAGES[weather_to]
48-
out = composite(img1, out, (WIDTH - HEIGHT, 0), (HEIGHT, HEIGHT))
53+
d = 0 if mod == "tr" else HEIGHT // 8
54+
out = composite(img1, out, (WIDTH - HEIGHT + d//2, d), (HEIGHT-2*d, HEIGHT-2*d))
4955
img2 = BASE_IMAGES[weather_from]
50-
out = composite(img2, out, (0, 0), (HEIGHT, HEIGHT))
56+
out = composite(img2, out, (d+d//2, 0), (HEIGHT, HEIGHT))
5157
return out
5258

5359

@@ -65,7 +71,7 @@ def make_weather_image(spec):
6571
t = spec.get('t')
6672

6773
if t:
68-
img = make_two(b, t)
74+
img = make_two(b, m, t)
6975
else:
7076
img = make_one(b)
7177

@@ -79,4 +85,4 @@ def make_weather_image(spec):
7985
with open('codes.json', encoding='utf-8') as f:
8086
data = json.load(f)
8187
for code, spec in data.items():
82-
make_weather_image(spec).save("output/" + code + '.png')
88+
make_weather_image(spec).convert(COLORMODE).save("output/" + code + EXTENSION, quality=95)

output/100.png

6.67 KB

output/100.psd

68.8 KB

output/101.png

7.96 KB

output/101.psd

80.5 KB

output/102.png

7.61 KB

output/102.psd

87 KB

output/103.png

7.61 KB

output/103.psd

87 KB

output/104.png

7.39 KB

output/104.psd

84.3 KB

output/105.png

7.39 KB

output/105.psd

84.3 KB

output/106.png

8.02 KB

output/106.psd

87.9 KB

output/107.png

8.02 KB

output/107.psd

87.9 KB

output/108.png

7.28 KB

output/108.psd

91.8 KB

output/110.png

7.96 KB

output/110.psd

80.5 KB

output/111.png

9.24 KB

output/111.psd

87.3 KB

output/112.png

7.61 KB

output/112.psd

87 KB

output/113.png

7.61 KB

output/113.psd

87 KB

output/114.png

9.69 KB

output/114.psd

99.5 KB

output/115.png

7.39 KB

output/115.psd

84.3 KB

output/116.png

7.39 KB

output/116.psd

84.3 KB

output/117.png

10.6 KB

output/117.psd

92 KB

output/118.png

12.2 KB

output/118.psd

98.5 KB

output/119.png

11.5 KB

output/119.psd

110 KB

output/120.png

7.61 KB

output/120.psd

87 KB

output/121.png

7.61 KB

output/121.psd

87 KB

output/122.png

7.61 KB

output/122.psd

87 KB

output/123.png

6.67 KB

output/123.psd

68.8 KB

output/124.png

6.67 KB

output/124.psd

68.8 KB

output/125.png

11.5 KB

output/125.psd

110 KB

output/126.png

9.69 KB

output/126.psd

99.5 KB

output/127.png

9.69 KB

output/127.psd

99.5 KB

output/128.png

9.69 KB

output/128.psd

99.5 KB

output/129.png

9.69 KB

output/129.psd

99.5 KB

output/130.png

10.2 KB

output/130.psd

99.4 KB

output/131.png

9.61 KB

output/131.psd

96.2 KB

output/132.png

7.96 KB

output/132.psd

80.5 KB

output/140.png

7.28 KB

output/140.psd

91.8 KB

output/160.png

8.02 KB

output/160.psd

87.9 KB

output/170.png

8.02 KB

output/170.psd

87.9 KB

output/181.png

12.2 KB

output/181.psd

98.5 KB

output/200.png

3.15 KB

output/200.psd

45.3 KB

output/201.png

4.59 KB

output/201.psd

66.9 KB

output/202.png

3.9 KB

output/202.psd

62.7 KB

output/203.png

3.9 KB

output/203.psd

62.7 KB

output/204.png

3.66 KB

output/204.psd

59.6 KB

output/205.png

3.66 KB

output/205.psd

59.6 KB

output/206.png

4.22 KB

output/206.psd

63.2 KB

output/207.png

4.22 KB

output/207.psd

63.2 KB

output/208.png

3.15 KB

output/208.psd

67 KB

output/209.png

3.37 KB

output/209.psd

57.1 KB

output/210.png

4.59 KB

output/210.psd

66.9 KB

output/211.png

9.19 KB

output/211.psd

87.5 KB

output/212.png

3.9 KB

output/212.psd

62.7 KB

output/213.png

3.9 KB

output/213.psd

62.7 KB

output/214.png

6.59 KB

output/214.psd

78.8 KB

output/215.png

3.66 KB

output/215.psd

59.6 KB

output/216.png

3.66 KB

output/216.psd

59.6 KB

output/217.png

7.38 KB

output/217.psd

71.8 KB

output/218.png

6.59 KB

output/218.psd

78.8 KB

output/219.png

6.59 KB

output/219.psd

78.8 KB

output/220.png

3.9 KB

output/220.psd

62.7 KB

output/221.png

3.9 KB

output/221.psd

62.7 KB

output/222.png

3.9 KB

output/222.psd

62.7 KB

output/223.png

4.59 KB

output/223.psd

66.9 KB

output/224.png

6.59 KB

output/224.psd

78.8 KB

output/225.png

6.59 KB

output/225.psd

78.8 KB

output/226.png

6.59 KB

output/226.psd

78.8 KB

output/227.png

6.59 KB

output/227.psd

78.8 KB

output/228.png

7.38 KB

output/228.psd

71.8 KB

output/229.png

7.38 KB

output/229.psd

71.8 KB

output/230.png

7.38 KB

output/230.psd

71.8 KB

output/231.png

3.15 KB

output/231.psd

45.3 KB

output/240.png

3.15 KB

output/240.psd

67 KB

output/250.png

3.3 KB

output/250.psd

62.1 KB

output/260.png

4.22 KB

output/260.psd

63.2 KB

output/270.png

4.22 KB

output/270.psd

63.2 KB

output/281.png

8.87 KB

output/281.psd

78.4 KB

output/300.png

3.82 KB

output/300.psd

58.7 KB

output/301.png

5.86 KB

output/301.psd

82.6 KB

output/302.png

5.24 KB

output/302.psd

70.8 KB

output/303.png

4.99 KB

output/303.psd

74.6 KB

output/304.png

6.67 KB

output/304.psd

59.5 KB

output/306.png

8.05 KB

output/306.psd

72.4 KB

output/307.png

8.85 KB

output/307.psd

79.1 KB

output/308.png

5.62 KB

output/308.psd

70.3 KB

output/309.png

4.99 KB

output/309.psd

74.6 KB

output/311.png

9.33 KB

output/311.psd

99.2 KB

output/313.png

6.08 KB

output/313.psd

78.3 KB

output/314.png

4.99 KB

output/314.psd

74.6 KB

output/315.png

7.4 KB

output/315.psd

83.6 KB

output/316.png

12.7 KB

output/316.psd

100 KB

output/317.png

9.34 KB

output/317.psd

80.2 KB

output/320.png

9.33 KB

output/320.psd

99.2 KB

output/321.png

6.08 KB

output/321.psd

78.3 KB

output/322.png

4.99 KB

output/322.psd

74.6 KB

output/323.png

9.33 KB

output/323.psd

99.2 KB

output/324.png

9.33 KB

output/324.psd

99.2 KB

output/325.png

9.33 KB

output/325.psd

99.2 KB

output/326.png

7.4 KB

output/326.psd

83.6 KB

output/327.png

7.4 KB

output/327.psd

83.6 KB

output/328.png

6.98 KB

output/328.psd

86.4 KB

output/329.png

5.45 KB

output/329.psd

78.7 KB

output/340.png

6.67 KB

output/340.psd

59.5 KB

output/350.png

5.15 KB

output/350.psd

68.6 KB

output/361.png

12.7 KB

output/361.psd

100 KB

output/371.png

9.34 KB

output/371.psd

80.2 KB

output/400.png

4.55 KB

output/400.psd

49.9 KB

output/401.png

6.8 KB

output/401.psd

76.5 KB

output/402.png

5.72 KB

output/402.psd

62.9 KB

output/403.png

6.13 KB

output/403.psd

70.5 KB

output/405.png

8.76 KB

output/405.psd

64.8 KB

output/406.png

7.65 KB

output/406.psd

77.3 KB

output/407.png

7.65 KB

output/407.psd

77.3 KB

output/409.png

6.13 KB

output/409.psd

70.5 KB

output/411.png

10.6 KB

output/411.psd

91.6 KB

output/413.png

7.6 KB

output/413.psd

71.9 KB

output/414.png

7.78 KB

output/414.psd

83.5 KB

output/420.png

10.6 KB

output/420.psd

91.6 KB

output/421.png

7.6 KB

output/421.psd

71.9 KB

output/422.png

7.78 KB

output/422.psd

83.5 KB

output/423.png

7.78 KB

output/423.psd

83.5 KB

output/424.png

7.78 KB

output/424.psd

83.5 KB

output/425.png

7.07 KB

output/425.psd

74.4 KB

output/426.png

9.91 KB

output/426.psd

82.4 KB

output/427.png

6.46 KB

output/427.psd

72 KB

output/450.png

4.55 KB

output/450.psd

59.6 KB

output/700.png

2.92 KB

output/700.psd

60.1 KB

output/701.png

4.17 KB

output/701.psd

72.1 KB

output/702.png

4.16 KB

output/702.psd

79.2 KB

output/703.png

4.16 KB

output/703.psd

79.2 KB

output/704.png

3.91 KB

output/704.psd

75.9 KB

output/705.png

3.91 KB

output/705.psd

75.9 KB

output/706.png

4.64 KB

output/706.psd

79.4 KB

output/707.png

4.64 KB

output/707.psd

79.4 KB

output/708.png

3.82 KB

output/708.psd

83.5 KB

output/710.png

4.17 KB

output/710.psd

72.1 KB

output/711.png

6.13 KB

output/711.psd

79.6 KB

output/712.png

4.16 KB

output/712.psd

79.2 KB

output/713.png

4.16 KB

output/713.psd

79.2 KB

output/714.png

6.52 KB

output/714.psd

91.8 KB

output/715.png

3.91 KB

output/715.psd

75.9 KB

output/716.png

3.91 KB

output/716.psd

75.9 KB

output/717.png

7.41 KB

output/717.psd

84.9 KB

output/718.png

8.93 KB

output/718.psd

91.5 KB

output/719.png

8.32 KB

output/719.psd

102 KB

output/720.png

4.16 KB

output/720.psd

79.2 KB

output/721.png

4.16 KB

output/721.psd

79.2 KB

output/722.png

4.16 KB

output/722.psd

79.2 KB

output/723.png

2.92 KB

output/723.psd

60.1 KB

output/724.png

2.92 KB

output/724.psd

60.1 KB

output/725.png

8.32 KB

output/725.psd

102 KB

output/726.png

6.52 KB

output/726.psd

91.8 KB

output/727.png

6.52 KB

output/727.psd

91.8 KB

output/728.png

6.52 KB

0 commit comments

Comments
 (0)