AI image processing toolkit - resize, Flux Kontext/GPT image sizing, ratio analysis, prompt checker, ComfyUI manager and unified error codes
Project description
imgnorm
AI图像处理工具集 —— 涵盖图片等比缩放、Flux Kontext / GPT图像尺寸适配、比例分析、违禁词检测、ComfyUI服务管理等场景。
特性
-
图片缩放与归一化
image_resize:等比缩放并居中放置到指定画布,支持自定义背景色ImageTool:多功能比例调整,支持标准比例匹配、fill/resize双模式、自定义放大百分比
-
AI 模型尺寸适配
FluxKontextImageScale:自动匹配 17 个 Flux Kontext 优选分辨率并缩放GPTImageSizeCalculator:根据比例 + 分辨率档位(1k/2k/4k)生成gpt-image-2合法尺寸
-
图片比例分析
ImageRatioAnalyzer:获取精确最简比例(GCD 约分)或近似简单整数比例
-
内容安全
PromptBanChecker:内置加密违禁词库开箱即用,支持自定义词库合并、排除词、Aho-Corasick 大词库加速
-
ComfyUI 服务管理
ComfyUIManager:一键触发重启 + 轮询等待服务恢复
安装
pip install imgnorm
可选扩展:
pip install imgnorm[fast] # 大词库 Aho-Corasick 加速(推荐词库 >50 时安装)
pip install imgnorm[comfyui] # ComfyUI 服务管理功能
pip install imgnorm[dev] # 开发环境(包含全部扩展 + pytest)
使用示例
image_resize — 等比缩放居中
from PIL import Image
from imgnorm import image_resize
# 打开图片
img = Image.open("input.jpg")
# 缩放到 640x480,默认黑色背景
result = image_resize(img, 640, 480)
result.save("output.jpg")
# 自定义背景颜色(白色)
result = image_resize(img, 640, 480, bg_color=(255, 255, 255))
result.save("output_white.jpg")
FluxKontextImageScale — Flux Kontext 优选分辨率缩放
from PIL import Image
from imgnorm import FluxKontextImageScale
img = Image.open("input.jpg")
# 自动匹配最接近原图宽高比的 Flux Kontext 优选分辨率并缩放
scaler = FluxKontextImageScale(img)
result = scaler.start()
result.save("output_kontext.jpg")
ImageTool — 多功能比例调整工具
from imgnorm import ImageTool
# 读取图片二进制数据
with open("input.jpg", "rb") as f:
image_bytes = f.read()
# 自动匹配最接近的标准比例,最小边放大 10%(默认)并填充透明背景
tool = ImageTool()
result_bytes = tool.adjust_size(image_bytes)
# 自定义放大百分比(放大 20%)
result_bytes = tool.adjust_size(image_bytes, expand_percent=20)
# 不缩放(expand_percent=0)
result_bytes = tool.adjust_size(image_bytes, expand_percent=0)
# 指定目标比例 3:4,使用 resize 模式
tool = ImageTool(proportion="3:4", need_adjust="resize")
result_bytes = tool.adjust_size(image_bytes)
# 指定目标比例 1:1,自定义填充色(白色不透明)
tool = ImageTool(proportion="1:1", need_adjust="fill", fill_color=(255, 255, 255, 255))
result_bytes, matched_ratio = tool.adjust_size(image_bytes, return_origin_ratio=True)
print(f"原图匹配比例: {matched_ratio}")
# 保存结果
with open("output.png", "wb") as f:
f.write(result_bytes)
GPTImageSizeCalculator — gpt-image-2 尺寸计算器
from imgnorm import GPTImageSizeCalculator
# 计算 16:9 比例、2K 分辨率的合法尺寸
result = GPTImageSizeCalculator.calc_size(aspect_ratio="16:9", resolution="2k")
print(result)
# {'width': 2560, 'height': 1440, 'size': '2560x1440', 'pixels': 3686400, 'aspect_ratio': '16:9', 'resolution': '2k', 'valid': True}
# 计算 1:1 比例、4K 分辨率的合法尺寸
result = GPTImageSizeCalculator.calc_size(aspect_ratio="1:1", resolution="4k")
print(result['size']) # 2880x2880
# 校验尺寸是否合法
is_valid = GPTImageSizeCalculator.is_valid_image_size(1024, 1024) # True
# 比例超过 3:1 时,默认自动钳位到最近合法比例(保持横竖方向)
result = GPTImageSizeCalculator.calc_size(aspect_ratio="1:10", resolution="4k")
print(result['size']) # 1280x3840(自动调整为 1:3)
# 严格模式:超限比例直接抛出异常
result = GPTImageSizeCalculator.calc_size(aspect_ratio="1:10", resolution="4k", strict=True)
# → ServiceError: 图像宽高比不合法, 相差太大
ImageRatioAnalyzer — 图片比例分析器
from imgnorm import ImageRatioAnalyzer
with open("input.jpg", "rb") as f:
image_bytes = f.read()
analyzer = ImageRatioAnalyzer()
raw_ratio = analyzer.get_raw_simple_ratio(image_bytes)
# 精确比例: 74:55
print(f"精确比例: {raw_ratio}")
approx_ratio = analyzer.get_approx_simple_ratio(image_bytes)
# 近似比例: 4:3
print(f"近似比例: {approx_ratio}")
# 调整搜索范围(默认 1~10,增大可匹配更复杂比例)
analyzer = ImageRatioAnalyzer(approx_search_range=20)
# 19:14
print(analyzer.get_approx_simple_ratio(image_bytes))
# 74:55
print(analyzer.get_raw_simple_ratio(image_bytes))
ComfyUIManager — ComfyUI 服务管理
import logging
from imgnorm import ComfyUIManager
# 配置日志(可选)
logger = logging.getLogger("comfyui")
logging.basicConfig(level=logging.DEBUG)
# 创建管理器(默认连接本地 8188 端口)
manager = ComfyUIManager(logger=logger)
# 发起重启并等待服务恢复
success = manager.run_reboot_and_wait()
if success:
print("服务重启成功")
else:
print("服务重启超时")
# 自定义配置
manager = ComfyUIManager(
base_url="http://127.0.0.1:8188",
timeout=10,
max_wait_seconds=120,
poll_interval=3.0,
logger=logger
)
PromptBanChecker — 提示词违禁词检测
from imgnorm import PromptBanChecker, PromptBanError
# 1. 开箱即用:自动加载内置加密违禁词库(1300+ 词)
checker = PromptBanChecker()
# 2. 内置词库 + 自定义文件合并
checker = PromptBanChecker(ban_word_file="my_words.txt")
# 3. 内置词库 + 运行时注入额外词
checker = PromptBanChecker(builtin_words=["自定义违禁词1", "自定义违禁词2"])
# 4. 排除内置词库中的某些词
checker = PromptBanChecker(exclude_words=["nude", "色情"])
# 5. 关闭内置词库,完全使用自己的
checker = PromptBanChecker(use_default=False, ban_word_file="my_words.txt")
# 校验提示词
try:
checker.check("some prompt text here")
print("校验通过")
except PromptBanError as e:
print(f"违禁词拦截: {e.error_msg}")
print(f"命中词: {e.extend_data}")
# 查找所有命中词(不抛异常)
hits = checker.find_matched_words("text to check")
print(f"命中: {hits}")
# 重新加载违禁词
checker.load_banned_words()
违禁词加载顺序: 包内置默认词库 → builtin_words 参数 → ban_word_file 用户文件,三者自动合并去重。
性能引擎: 词库 < 50 词自动使用正则预编译;≥ 50 词且已安装 pyahocorasick 时自动切换 Aho-Corasick 算法(O(n) 扫描,与词库大小无关)。
API 说明
image_resize(image, target_w, target_h, bg_color=(0, 0, 0))
将图片等比缩放并居中放置到指定尺寸的画布上。
| 参数 | 类型 | 说明 |
|---|---|---|
image |
PIL.Image.Image |
输入图片对象 |
target_w |
int |
目标宽度 |
target_h |
int |
目标高度 |
bg_color |
tuple |
画布背景颜色(RGB 元组),默认黑色 (0, 0, 0) |
返回值: 缩放并居中后的 PIL.Image.Image 对象。
处理逻辑:
- 创建指定尺寸和背景色的画布
- 计算等比缩放比例(取宽、高缩放比的最小值),确保图片完整放入画布
- 使用 LANCZOS 算法高质量缩放图片
- 计算居中偏移量,将缩放后的图片粘贴到画布中央
FluxKontextImageScale(image)
根据原图宽高比,将图片缩放到最接近的 Flux Kontext 优选分辨率。
| 参数 | 类型 | 说明 |
|---|---|---|
image |
PIL.Image.Image |
输入图片对象 |
方法 start(): 计算原图宽高比,从 17 个优选分辨率中匹配最接近的一个,使用 LANCZOS 算法缩放并返回结果图片。
优选分辨率列表(宽×高):
672×1568 · 688×1504 · 720×1456 · 752×1392 · 800×1328 · 832×1248 · 880×1184 · 944×1104 · 1024×1024 · 1104×944 · 1184×880 · 1248×832 · 1328×800 · 1392×752 · 1456×720 · 1504×688 · 1568×672
返回值: 缩放后的 PIL.Image.Image 对象。
ImageTool(proportion=None, need_adjust="fill", fill_color=(255,255,255,0))
多功能图片尺寸调整工具,支持标准比例匹配和两种调整模式。
| 参数 | 类型 | 说明 |
|---|---|---|
proportion |
str | None |
目标比例,如 "3:4" / "1:1";空字符串或 None 表示自动匹配 |
need_adjust |
str |
调整模式:"fill"(画布填充)或 "resize"(拉伸) |
fill_color |
tuple |
填充背景色 RGBA,默认透明 (255, 255, 255, 0) |
方法 adjust_size(image_bytes, return_origin_ratio=False, expand_percent=10):
| 参数 | 类型 | 说明 |
|---|---|---|
image_bytes |
bytes |
图片二进制数据 |
return_origin_ratio |
bool |
是否同时返回原图匹配的标准比例字符串 |
expand_percent |
float |
放大百分比,默认 10(放大 10%);传 0 不缩放,负数缩小 |
返回值: bytes(处理后图片数据);当 return_origin_ratio=True 时返回 (bytes, str)。
标准比例池: 1:1 · 2:3 · 3:2 · 3:4 · 4:3 · 4:5 · 5:4 · 9:16 · 16:9 · 21:9
处理逻辑:
proportion存在且与原图最接近标准比例不一致 → 直接返回原图proportion存在且一致 → 反转比例后执行 resize/fillproportion为空且need_adjust="fill"→ 最小边按expand_percent放大,画布填充proportion为空且need_adjust="resize"→ 单边按expand_percent放大后拉伸
GPTImageSizeCalculator
gpt-image-2 尺寸计算器,根据比例和分辨率自动生成合法图片尺寸。
类方法:
| 方法 | 说明 |
|---|---|
calc_size(aspect_ratio="1:1", resolution="2k", strict=False) |
根据比例和分辨率计算合法尺寸 |
is_valid_image_size(width, height) |
校验尺寸是否合法 |
round_to_multiple(value, multiple=16) |
四舍五入到指定倍数 |
floor_to_multiple(value, multiple=16) |
向下对齐到指定倍数,用于像素超限时压缩 |
calc_size 参数:
| 参数 | 类型 | 说明 |
|---|---|---|
aspect_ratio |
str |
宽高比,如 "1:1" / "16:9" / "4:3" |
resolution |
str |
分辨率档位:"1k" / "2k" / "4k" |
strict |
bool |
是否严格校验宽高比(≤3:1),默认 False(超限自动钳位到最近合法比例);True 时超限直接抛出 ServiceError |
返回值: dict,包含 width、height、size、pixels、aspect_ratio、resolution、valid。
合法性约束:
- 最大边 ≤ 3840
- 宽高为 16 的倍数
- 宽高比 ≤ 3:1
- 像素范围:655,360 ~ 8,294,400
ImageRatioAnalyzer(approx_search_range=10)
图片比例分析工具,获取图片的宽高比信息。
| 参数 | 类型 | 说明 |
|---|---|---|
approx_search_range |
int |
近似比例搜索整数范围,默认 1~10 |
方法:
| 方法 | 说明 |
|---|---|
get_raw_simple_ratio(image_bytes) |
获取精确最简宽高比(GCD 约分) |
get_approx_simple_ratio(image_bytes) |
自动拟合近似简单整数比例 |
get_raw_simple_ratio: 通过最大公约数约分,返回精确的最简比例字符串,如 1920x1080 → "16:9"。
get_approx_simple_ratio: 遍历 1~approx_search_range 范围内的整数组合,找到与图片实际比例最接近的简单整数比,返回如 "2:3"、"16:9"。
返回值: 比例字符串(str)。
ComfyUIManager
ComfyUI 服务管理工具,位于 imgnorm.comfyui 子模块。
| 参数 | 类型 | 说明 |
|---|---|---|
base_url |
str |
服务地址,默认 "http://127.0.0.1:8188" |
timeout |
int |
请求超时秒数,默认 5 |
max_wait_seconds |
int |
最长等待恢复时间,默认 60 |
poll_interval |
float |
轮询间隔秒数,默认2.0 |
logger |
logging.Logger |
日志记录器,默认使用模块logger |
方法:
| 方法 | 说明 |
|---|---|
trigger_reboot() |
发起重启请求,远程断开视为成功 |
wait_service_ready() |
轮询检测服务是否恢复,超时返回False |
run_reboot_and_wait() |
完整流程:重启 + 等待,返回bool |
工作原理:
- 调用
/api/manager/reboot接口触发重启 - 轮询
/api/system_stats接口,状态码 200 判定恢复 - 超时未恢复返回
False
安装: 使用 comfyui 功能需额外安装 requests:
pip install imgnorm[comfyui]
# 或
pip install requests>=2.20.0
PromptBanChecker(ban_word_file=None, ignore_case=True, builtin_words=None, use_default=True, exclude_words=None)
提示词违禁词校验工具。内置加密违禁词库开箱即用,支持多来源词库合并、排除词、大词库自动加速。
| 参数 | 类型 | 说明 |
|---|---|---|
ban_word_file |
str | None |
用户自定义违禁词文件路径(可选,支持 .txt / .pkl / .pickle) |
ignore_case |
bool |
是否忽略大小写,默认 True |
builtin_words |
list[str] | None |
运行时注入的违禁词列表,与内置词库合并去重 |
use_default |
bool |
是否加载包内置默认违禁词库,默认 True |
exclude_words |
list[str] | None |
从最终词库中排除的词列表 |
方法:
| 方法 | 说明 |
|---|---|
check(prompt) |
校验提示词,命中则抛出 PromptBanError |
find_matched_words(text) |
查找所有命中词,返回列表 |
load_banned_words() |
重新加载并合并所有来源的违禁词 |
create_pickle_file(words, output_path) |
静态方法:将词列表序列化为 pickle 文件 |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file imgnorm-1.0.1-cp314-cp314-win_amd64.whl.
File metadata
- Download URL: imgnorm-1.0.1-cp314-cp314-win_amd64.whl
- Upload date:
- Size: 273.2 kB
- Tags: CPython 3.14, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
08d6aa74861ed8c2732a141838bd147a1fa1250fea9a5039728a84ab1429c2e5
|
|
| MD5 |
ce6bf1bc282030e8c0ef6e54a6339f58
|
|
| BLAKE2b-256 |
86e7943655176744fc3b063604fea76b6355014be325653c00677adfa41292ba
|
Provenance
The following attestation bundles were made for imgnorm-1.0.1-cp314-cp314-win_amd64.whl:
Publisher:
wheels.yml on zhenzi0322-package/imgnorm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
imgnorm-1.0.1-cp314-cp314-win_amd64.whl -
Subject digest:
08d6aa74861ed8c2732a141838bd147a1fa1250fea9a5039728a84ab1429c2e5 - Sigstore transparency entry: 2246744544
- Sigstore integration time:
-
Permalink:
zhenzi0322-package/imgnorm@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/zhenzi0322-package
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Trigger Event:
push
-
Statement type:
File details
Details for the file imgnorm-1.0.1-cp314-cp314-manylinux_2_17_x86_64.whl.
File metadata
- Download URL: imgnorm-1.0.1-cp314-cp314-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 1.7 MB
- Tags: CPython 3.14, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3ff40276df68ab34ce7cb257e156dd6aba01547c3713e5d9203cb5e4362cd7f1
|
|
| MD5 |
8dc35dd3d6c4d4ecf9d50d424003016c
|
|
| BLAKE2b-256 |
7d64ffaee12c7d10b761bec332696a3dc5aab93f54ad071d084a88669356b77d
|
Provenance
The following attestation bundles were made for imgnorm-1.0.1-cp314-cp314-manylinux_2_17_x86_64.whl:
Publisher:
wheels.yml on zhenzi0322-package/imgnorm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
imgnorm-1.0.1-cp314-cp314-manylinux_2_17_x86_64.whl -
Subject digest:
3ff40276df68ab34ce7cb257e156dd6aba01547c3713e5d9203cb5e4362cd7f1 - Sigstore transparency entry: 2246744041
- Sigstore integration time:
-
Permalink:
zhenzi0322-package/imgnorm@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/zhenzi0322-package
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Trigger Event:
push
-
Statement type:
File details
Details for the file imgnorm-1.0.1-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: imgnorm-1.0.1-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 267.5 kB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aa46f07393571082c24d6f1b50a9c0c07ce290769c030804653f3e7e3d261f1d
|
|
| MD5 |
601431fa76d0c168557106e277518bd5
|
|
| BLAKE2b-256 |
e183cb95d1c4de171e768fbddf4c836ceda91c1571f0b368808d5c038386fe02
|
Provenance
The following attestation bundles were made for imgnorm-1.0.1-cp313-cp313-win_amd64.whl:
Publisher:
wheels.yml on zhenzi0322-package/imgnorm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
imgnorm-1.0.1-cp313-cp313-win_amd64.whl -
Subject digest:
aa46f07393571082c24d6f1b50a9c0c07ce290769c030804653f3e7e3d261f1d - Sigstore transparency entry: 2246741753
- Sigstore integration time:
-
Permalink:
zhenzi0322-package/imgnorm@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/zhenzi0322-package
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Trigger Event:
push
-
Statement type:
File details
Details for the file imgnorm-1.0.1-cp313-cp313-manylinux_2_17_x86_64.whl.
File metadata
- Download URL: imgnorm-1.0.1-cp313-cp313-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 1.7 MB
- Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5e58520c7abe69767fc3c9689b5b07ed40005eda121c1d51fea0c1a9d8914285
|
|
| MD5 |
f560ff1fac17f0a3c07faa0f00b40a25
|
|
| BLAKE2b-256 |
bb1e87b51ca337de287031f3014e7b4470cb0c5715bdd7b170f1ebdc3956c2eb
|
Provenance
The following attestation bundles were made for imgnorm-1.0.1-cp313-cp313-manylinux_2_17_x86_64.whl:
Publisher:
wheels.yml on zhenzi0322-package/imgnorm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
imgnorm-1.0.1-cp313-cp313-manylinux_2_17_x86_64.whl -
Subject digest:
5e58520c7abe69767fc3c9689b5b07ed40005eda121c1d51fea0c1a9d8914285 - Sigstore transparency entry: 2246742069
- Sigstore integration time:
-
Permalink:
zhenzi0322-package/imgnorm@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/zhenzi0322-package
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Trigger Event:
push
-
Statement type:
File details
Details for the file imgnorm-1.0.1-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: imgnorm-1.0.1-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 271.7 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
48dce4196b70614922e6b00a0ddf7da49a34c735bf1a916de9da33e5543fb460
|
|
| MD5 |
d6174d928a6e3b98d63a5b5e736e505f
|
|
| BLAKE2b-256 |
24926c29ef052d6b1ea94d800a3772e8c8e79e4575d6ac3ec8d08bf1edfbc164
|
Provenance
The following attestation bundles were made for imgnorm-1.0.1-cp312-cp312-win_amd64.whl:
Publisher:
wheels.yml on zhenzi0322-package/imgnorm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
imgnorm-1.0.1-cp312-cp312-win_amd64.whl -
Subject digest:
48dce4196b70614922e6b00a0ddf7da49a34c735bf1a916de9da33e5543fb460 - Sigstore transparency entry: 2246743422
- Sigstore integration time:
-
Permalink:
zhenzi0322-package/imgnorm@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/zhenzi0322-package
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Trigger Event:
push
-
Statement type:
File details
Details for the file imgnorm-1.0.1-cp312-cp312-manylinux_2_17_x86_64.whl.
File metadata
- Download URL: imgnorm-1.0.1-cp312-cp312-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 1.7 MB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bcc3769db0214dbd4b7d33a20f2866e4f38c5a85c2cb7a085f44d2e971da895d
|
|
| MD5 |
8b71bbaddfc9fc5cfb7386604824cd18
|
|
| BLAKE2b-256 |
7c69256027998e489161c66072e7e3f60e149f96b66221136e3a41bc23489f35
|
Provenance
The following attestation bundles were made for imgnorm-1.0.1-cp312-cp312-manylinux_2_17_x86_64.whl:
Publisher:
wheels.yml on zhenzi0322-package/imgnorm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
imgnorm-1.0.1-cp312-cp312-manylinux_2_17_x86_64.whl -
Subject digest:
bcc3769db0214dbd4b7d33a20f2866e4f38c5a85c2cb7a085f44d2e971da895d - Sigstore transparency entry: 2246746174
- Sigstore integration time:
-
Permalink:
zhenzi0322-package/imgnorm@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/zhenzi0322-package
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Trigger Event:
push
-
Statement type:
File details
Details for the file imgnorm-1.0.1-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: imgnorm-1.0.1-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 269.8 kB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8010e956a72fd564f094de2ab8ff8c97f6b2d1000a616a516d0bf25e5f57de46
|
|
| MD5 |
726cd1b2b1c6665a7b9ae130a927b358
|
|
| BLAKE2b-256 |
16c956c51bf59e176c1c0a8d0b3cdc06a79503d2eec41a8712a6ee14714366ea
|
Provenance
The following attestation bundles were made for imgnorm-1.0.1-cp311-cp311-win_amd64.whl:
Publisher:
wheels.yml on zhenzi0322-package/imgnorm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
imgnorm-1.0.1-cp311-cp311-win_amd64.whl -
Subject digest:
8010e956a72fd564f094de2ab8ff8c97f6b2d1000a616a516d0bf25e5f57de46 - Sigstore transparency entry: 2246747219
- Sigstore integration time:
-
Permalink:
zhenzi0322-package/imgnorm@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/zhenzi0322-package
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Trigger Event:
push
-
Statement type:
File details
Details for the file imgnorm-1.0.1-cp311-cp311-manylinux_2_17_x86_64.whl.
File metadata
- Download URL: imgnorm-1.0.1-cp311-cp311-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 1.6 MB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f8df228ee0150b208cb9965c0bba1a20ea82644381f2a401286d63dd4417aa81
|
|
| MD5 |
d106ff7c571b63d5384bfe9e6f0ed4c7
|
|
| BLAKE2b-256 |
d2ed8b25a4edcc00cb58c022619837def7b3699ee7d573ff5e489fb433e30722
|
Provenance
The following attestation bundles were made for imgnorm-1.0.1-cp311-cp311-manylinux_2_17_x86_64.whl:
Publisher:
wheels.yml on zhenzi0322-package/imgnorm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
imgnorm-1.0.1-cp311-cp311-manylinux_2_17_x86_64.whl -
Subject digest:
f8df228ee0150b208cb9965c0bba1a20ea82644381f2a401286d63dd4417aa81 - Sigstore transparency entry: 2246746777
- Sigstore integration time:
-
Permalink:
zhenzi0322-package/imgnorm@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/zhenzi0322-package
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Trigger Event:
push
-
Statement type:
File details
Details for the file imgnorm-1.0.1-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: imgnorm-1.0.1-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 270.7 kB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
505072465f2a0d39a84fafe096c47d86a2049388974f367a87fd600e986fd083
|
|
| MD5 |
5328995184fe48283c907d9f3940d625
|
|
| BLAKE2b-256 |
044a9335bb3c2d1b5f08bfce1a90090abebd3a36386fde3b6199fea74a370dd7
|
Provenance
The following attestation bundles were made for imgnorm-1.0.1-cp310-cp310-win_amd64.whl:
Publisher:
wheels.yml on zhenzi0322-package/imgnorm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
imgnorm-1.0.1-cp310-cp310-win_amd64.whl -
Subject digest:
505072465f2a0d39a84fafe096c47d86a2049388974f367a87fd600e986fd083 - Sigstore transparency entry: 2246742553
- Sigstore integration time:
-
Permalink:
zhenzi0322-package/imgnorm@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/zhenzi0322-package
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Trigger Event:
push
-
Statement type:
File details
Details for the file imgnorm-1.0.1-cp310-cp310-manylinux_2_17_x86_64.whl.
File metadata
- Download URL: imgnorm-1.0.1-cp310-cp310-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 1.6 MB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1ab367a48ef1c4e22bf230d5f48b232fe8928359328a4c3c54d78b24c002ad4e
|
|
| MD5 |
d839884978a004a0e72a42e426b93d6a
|
|
| BLAKE2b-256 |
a9d5b32de2cdb0d99a94f89eb8910e720da2118f0c4fde90e5e868b82163a17c
|
Provenance
The following attestation bundles were made for imgnorm-1.0.1-cp310-cp310-manylinux_2_17_x86_64.whl:
Publisher:
wheels.yml on zhenzi0322-package/imgnorm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
imgnorm-1.0.1-cp310-cp310-manylinux_2_17_x86_64.whl -
Subject digest:
1ab367a48ef1c4e22bf230d5f48b232fe8928359328a4c3c54d78b24c002ad4e - Sigstore transparency entry: 2246747908
- Sigstore integration time:
-
Permalink:
zhenzi0322-package/imgnorm@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/zhenzi0322-package
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Trigger Event:
push
-
Statement type:
File details
Details for the file imgnorm-1.0.1-cp39-cp39-win_amd64.whl.
File metadata
- Download URL: imgnorm-1.0.1-cp39-cp39-win_amd64.whl
- Upload date:
- Size: 272.0 kB
- Tags: CPython 3.9, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5001e97ad7165b98d00e8ed227c3fbf011e4b887f5a3f95881ceb4b215e6543a
|
|
| MD5 |
66d3bf584f4e200f3ef011000af05930
|
|
| BLAKE2b-256 |
9a0e727780027755c64264644a23f7e9158a8c1f924984f4024a28ff5baa3a6a
|
Provenance
The following attestation bundles were made for imgnorm-1.0.1-cp39-cp39-win_amd64.whl:
Publisher:
wheels.yml on zhenzi0322-package/imgnorm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
imgnorm-1.0.1-cp39-cp39-win_amd64.whl -
Subject digest:
5001e97ad7165b98d00e8ed227c3fbf011e4b887f5a3f95881ceb4b215e6543a - Sigstore transparency entry: 2246745566
- Sigstore integration time:
-
Permalink:
zhenzi0322-package/imgnorm@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/zhenzi0322-package
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Trigger Event:
push
-
Statement type:
File details
Details for the file imgnorm-1.0.1-cp39-cp39-manylinux_2_17_x86_64.whl.
File metadata
- Download URL: imgnorm-1.0.1-cp39-cp39-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 1.6 MB
- Tags: CPython 3.9, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2a6e15b14c45eab0d41f0bde4215b4609bb2158672a495ad959761f5ae10d1a8
|
|
| MD5 |
88f4fb6f08a4651f8a3c7145ba82a672
|
|
| BLAKE2b-256 |
547a33a18a233079de0770b7d5a4d94299123cd1a969cb241d46e6484e0482f1
|
Provenance
The following attestation bundles were made for imgnorm-1.0.1-cp39-cp39-manylinux_2_17_x86_64.whl:
Publisher:
wheels.yml on zhenzi0322-package/imgnorm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
imgnorm-1.0.1-cp39-cp39-manylinux_2_17_x86_64.whl -
Subject digest:
2a6e15b14c45eab0d41f0bde4215b4609bb2158672a495ad959761f5ae10d1a8 - Sigstore transparency entry: 2246748367
- Sigstore integration time:
-
Permalink:
zhenzi0322-package/imgnorm@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/zhenzi0322-package
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Trigger Event:
push
-
Statement type:
File details
Details for the file imgnorm-1.0.1-cp38-cp38-win_amd64.whl.
File metadata
- Download URL: imgnorm-1.0.1-cp38-cp38-win_amd64.whl
- Upload date:
- Size: 277.9 kB
- Tags: CPython 3.8, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8889d12a8449dbbaba66dd3de00340f1421acaf3ea4161db1a21436e3bcdbb7b
|
|
| MD5 |
8bbec18b6ed7fa4c692f93eae492e4bc
|
|
| BLAKE2b-256 |
f91cf431901d33d355da77ac66dcf90016d2bf806c66727927e0a4711738b2ae
|
Provenance
The following attestation bundles were made for imgnorm-1.0.1-cp38-cp38-win_amd64.whl:
Publisher:
wheels.yml on zhenzi0322-package/imgnorm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
imgnorm-1.0.1-cp38-cp38-win_amd64.whl -
Subject digest:
8889d12a8449dbbaba66dd3de00340f1421acaf3ea4161db1a21436e3bcdbb7b - Sigstore transparency entry: 2246746505
- Sigstore integration time:
-
Permalink:
zhenzi0322-package/imgnorm@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/zhenzi0322-package
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Trigger Event:
push
-
Statement type:
File details
Details for the file imgnorm-1.0.1-cp38-cp38-manylinux_2_17_x86_64.whl.
File metadata
- Download URL: imgnorm-1.0.1-cp38-cp38-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 1.6 MB
- Tags: CPython 3.8, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2597166d0dc1fad2c17f86d2634fb878065c6a2f4244e1cddcee2e5717bb65a1
|
|
| MD5 |
652eddf0862067ab3dbfa216d9108547
|
|
| BLAKE2b-256 |
a1a202b893ff3fa87072392338f6642b4ae9ef88ac7c8dd29b1fbaa584e08c4a
|
Provenance
The following attestation bundles were made for imgnorm-1.0.1-cp38-cp38-manylinux_2_17_x86_64.whl:
Publisher:
wheels.yml on zhenzi0322-package/imgnorm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
imgnorm-1.0.1-cp38-cp38-manylinux_2_17_x86_64.whl -
Subject digest:
2597166d0dc1fad2c17f86d2634fb878065c6a2f4244e1cddcee2e5717bb65a1 - Sigstore transparency entry: 2246743047
- Sigstore integration time:
-
Permalink:
zhenzi0322-package/imgnorm@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/zhenzi0322-package
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
wheels.yml@7189dc27da7b09bbfc1a3a84fc34b680e1b8099f -
Trigger Event:
push
-
Statement type: