Портал технической службы: наряды и чек-листы, задачи, отказы и неисправности, анализ надёжности, карты, склады, приложение для Android

This commit is contained in:
darkorion
2026-10-13 09:09:53 +03:00
commit c298f5a830
247 changed files with 23200 additions and 0 deletions
+15
View File
@@ -0,0 +1,15 @@
"""Контрольный лист: собирает несколько скриншотов в одну картинку для быстрого просмотра."""
import sys
from pathlib import Path
from PIL import Image
img = Path(__file__).resolve().parents[2] / "docs" / "guide" / "img"
names, out, cols, w = sys.argv[3:], sys.argv[1], int(sys.argv[2]), int(sys.argv[2]) and 0
ims = [Image.open(img / f"{n}.png") for n in names]
cell = 640 if cols <= 2 else 420
th = [i.resize((cell, int(i.height * cell / i.width))) for i in ims]
rows = [th[k:k + cols] for k in range(0, len(th), cols)]
H = sum(max(t.height for t in r) for r in rows); sheet = Image.new("RGB", (cell * cols, H), "white"); y = 0
for r in rows:
for c, t in enumerate(r): sheet.paste(t, (c * cell, y))
y += max(t.height for t in r)
sheet.save(out)