mirror of
https://github.com/Kakune55/ComiPy.git
synced 2025-05-06 18:29:26 +08:00
feat:新增图像编码设置
This commit is contained in:
parent
c9605c392f
commit
d753e7cad4
@ -14,4 +14,9 @@ path=./data/metadata.db
|
|||||||
[file]
|
[file]
|
||||||
inputdir=./input
|
inputdir=./input
|
||||||
storedir=./data/file
|
storedir=./data/file
|
||||||
tmpdir=./data/tmp
|
tmpdir=./data/tmp
|
||||||
|
|
||||||
|
[img]
|
||||||
|
encode=jpg
|
||||||
|
miniSize=400
|
||||||
|
fullSize=1000
|
2
file.py
2
file.py
@ -79,7 +79,7 @@ def thumbnail(input, minSize: int = 600, encode:str="webp"):
|
|||||||
img = cv2.resize(img, newshape)
|
img = cv2.resize(img, newshape)
|
||||||
if encode == "webp":
|
if encode == "webp":
|
||||||
success, encoded_image = cv2.imencode(".webp", img, [cv2.IMWRITE_WEBP_QUALITY, 75])
|
success, encoded_image = cv2.imencode(".webp", img, [cv2.IMWRITE_WEBP_QUALITY, 75])
|
||||||
elif encode == "jpg":
|
elif encode == "jpg" or "jpeg":
|
||||||
success, encoded_image = cv2.imencode(".jpg", img, [cv2.IMWRITE_JPEG_QUALITY, 75])
|
success, encoded_image = cv2.imencode(".jpg", img, [cv2.IMWRITE_JPEG_QUALITY, 75])
|
||||||
else:
|
else:
|
||||||
return input
|
return input
|
||||||
|
@ -1,9 +1,13 @@
|
|||||||
from flask import *
|
from flask import *
|
||||||
from flask import Blueprint
|
from flask import Blueprint
|
||||||
import db.file , file, gc
|
import db.file , file, gc , app_conf
|
||||||
|
|
||||||
api_Img_bp = Blueprint("api_Img_bp", __name__)
|
api_Img_bp = Blueprint("api_Img_bp", __name__)
|
||||||
|
|
||||||
|
conf = app_conf.conf()
|
||||||
|
imgencode = conf.get("img", "encode")
|
||||||
|
miniSize = conf.getint("img", "miniSize")
|
||||||
|
fullSize = conf.getint("img", "fullSize")
|
||||||
|
|
||||||
@api_Img_bp.route("/api/img/<bookid>/<index>")
|
@api_Img_bp.route("/api/img/<bookid>/<index>")
|
||||||
def img(bookid, index): # 图片接口
|
def img(bookid, index): # 图片接口
|
||||||
@ -16,12 +20,12 @@ def img(bookid, index): # 图片接口
|
|||||||
if isinstance(data, str):
|
if isinstance(data, str):
|
||||||
abort(404)
|
abort(404)
|
||||||
if request.args.get("mini") == "yes":
|
if request.args.get("mini") == "yes":
|
||||||
data = file.thumbnail(data,encode="jpg")
|
data = file.thumbnail(data,miniSize,encode=imgencode)
|
||||||
else:
|
else:
|
||||||
data = file.thumbnail(data,1500)
|
data = file.thumbnail(data,fullSize,encode=imgencode)
|
||||||
response = make_response(data) # 读取文件
|
response = make_response(data) # 读取文件
|
||||||
del data
|
del data
|
||||||
response.headers.set("Content-Type", "image/Webp")
|
response.headers.set("Content-Type",f"image/{imgencode}")
|
||||||
response.headers.set("Content-Disposition", "inline", filename=filename)
|
response.headers.set("Content-Disposition", "inline", filename=filename)
|
||||||
gc.collect()
|
gc.collect()
|
||||||
return response
|
return response
|
||||||
|
Loading…
x
Reference in New Issue
Block a user