From 27c217023935b081a04e83ae212b42a6875bf747 Mon Sep 17 00:00:00 2001 From: jinye_huang Date: Mon, 4 Aug 2025 16:40:46 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=B7=E6=8A=A5=E5=BA=93=E5=BC=84=E5=AE=8C?= =?UTF-8?q?=E4=BA=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/config/poster_config_manager.py | 2 +- api/config/poster_prompts.yaml | 2 +- api/models/vibrant_poster.py | 6 +- .../__pycache__/poster.cpython-312.pyc | Bin 116257 -> 116245 bytes api/services/poster.py | 4 +- api/services/poster_service.py | 2 +- config/poster_gen.json | 4 +- .../config/__pycache__/models.cpython-312.pyc | Bin 9594 -> 9594 bytes core/config/models.py | 2 +- demo_refactored_templates.py | 10 +- .../__pycache__/base_template.cpython-312.pyc | Bin 4573 -> 4573 bytes .../business_template.cpython-312.pyc | Bin 25268 -> 25268 bytes .../vibrant_template.cpython-312.pyc | Bin 72170 -> 71944 bytes poster/templates/base_template.py | 2 +- poster/templates/business_template.py | 2 +- poster/templates/vibrant_template.py | 232 +++++++++--------- poster_template.py | 14 +- test_size_adjustment_result.png | Bin 0 -> 209808 bytes .../image_processor.cpython-312.pyc | Bin 12250 -> 12250 bytes utils/image_processor.py | 4 +- 20 files changed, 142 insertions(+), 144 deletions(-) create mode 100644 test_size_adjustment_result.png diff --git a/api/config/poster_config_manager.py b/api/config/poster_config_manager.py index 337d6d3..0ef0693 100644 --- a/api/config/poster_config_manager.py +++ b/api/config/poster_config_manager.py @@ -71,7 +71,7 @@ class PosterConfigManager: "id": template_id, "name": template_info.get("name", template_id), "description": template_info.get("description", ""), - "size": template_info.get("size", [900, 1200]), + "size": template_info.get("size", [1350, 1800]), "required_fields": template_info.get("required_fields", []), "optional_fields": template_info.get("optional_fields", []) } diff --git a/api/config/poster_prompts.yaml b/api/config/poster_prompts.yaml index 9f5bd54..a7b69ea 100644 --- a/api/config/poster_prompts.yaml +++ b/api/config/poster_prompts.yaml @@ -80,7 +80,7 @@ templates: vibrant: name: "Vibrant活力模板" description: "适合旅游景点、娱乐活动的活力海报模板" - size: [900, 1200] + size: [1350, 1800] required_fields: ["title", "slogan", "price", "ticket_type", "content_items"] optional_fields: ["remarks", "tag", "pagination"] prompt_key: "vibrant" diff --git a/api/models/vibrant_poster.py b/api/models/vibrant_poster.py index c1b6218..44347a5 100644 --- a/api/models/vibrant_poster.py +++ b/api/models/vibrant_poster.py @@ -26,7 +26,7 @@ class TemplateInfo(BaseModel): "id": "vibrant", "name": "Vibrant活力模板", "description": "适合旅游景点、娱乐活动的活力海报模板", - "size": [900, 1200], + "size": [1350, 1800], "required_fields": ["title", "slogan", "price", "ticket_type", "content_items"], "optional_fields": ["remarks", "tag", "pagination"] } @@ -189,7 +189,7 @@ class PosterGenerationResponse(BaseAPIResponse): "metadata": { "image_used": "/data/images/ocean_park.jpg", "generation_method": "ai_generated", - "template_size": [900, 1200], + "template_size": [1350, 1800], "processing_time": 3.2 } } @@ -243,7 +243,7 @@ class TemplateListResponse(BaseAPIResponse): "id": "vibrant", "name": "Vibrant活力模板", "description": "适合旅游景点、娱乐活动的活力海报模板", - "size": [900, 1200], + "size": [1350, 1800], "required_fields": ["title", "slogan", "price"], "optional_fields": ["remarks", "tag"] } diff --git a/api/services/__pycache__/poster.cpython-312.pyc b/api/services/__pycache__/poster.cpython-312.pyc index 59e7092dc910ed449b92b74b25bc84cd60de6b02..b5ce6365dd01d7824038e31fddd650d5799c50cd 100644 GIT binary patch delta 11711 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 NDVdfTyI-W5zXL(Ekg@;( delta 11737 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 diff --git a/api/services/poster.py b/api/services/poster.py index 330747f..0a6360a 100644 --- a/api/services/poster.py +++ b/api/services/poster.py @@ -232,7 +232,7 @@ class PosterService: # # 3. 图片解码 images = None # 获取模板的默认尺寸,如果获取不到则使用标准尺寸 - template_size = getattr(template_handler, 'size', (900, 1200)) + template_size = getattr(template_handler, 'size', (1350, 1800)) if images_base64 and len(images_base64) > 0: try: @@ -694,7 +694,7 @@ class PosterService: """ try: # 获取图像尺寸 - image_size = [images.width, images.height] if hasattr(images, 'width') else [900, 1200] + image_size = [images.width, images.height] if hasattr(images, 'width') else [1350, 1800] # 生成Fabric.js JSON数据 fabric_json = self._generate_fabric_json(content, template_id, image_size, images) diff --git a/api/services/poster_service.py b/api/services/poster_service.py index 90df043..76cb094 100644 --- a/api/services/poster_service.py +++ b/api/services/poster_service.py @@ -54,7 +54,7 @@ class UnifiedPosterService: id=template_id, name=template_info.get("name", template_id), description=template_info.get("description", ""), - size=template_info.get("size", [900, 1200]), + size=template_info.get("size", [1350, 1800]), required_fields=template_info.get("required_fields", []), optional_fields=template_info.get("optional_fields", []) ) diff --git a/config/poster_gen.json b/config/poster_gen.json index f02c981..ff7f279 100644 --- a/config/poster_gen.json +++ b/config/poster_gen.json @@ -27,7 +27,7 @@ "topic_index": 0, "variant_index": 1, "template": "business", - "size": [900, 1200], + "size": [1350, 1800], "generate_text": false, "params": { "top_image_path": "resource/data/images/hotel1.jpg", @@ -52,7 +52,7 @@ "topic_index": 1, "variant_index": 0, "template": "collage", - "size": [900, 1200], + "size": [1350, 1800], "generate_text": false, "params": { "image_paths": [ diff --git a/core/config/__pycache__/models.cpython-312.pyc b/core/config/__pycache__/models.cpython-312.pyc index 16b50c23eaf1ce4476cadac2480eb0ecf5fe1f85..e1f56c6940ad6d0bf7704ed4e21db9ab0c8f659f 100644 GIT binary patch delta 66 zcmez6^~;O*G%qg~0}wpVnvmhVk#~_iyBjM5Lna6NphZ2qp;%nSh978dOQ delta 66 zcmez6^~;O*G%qg~0}u%B>d0`~$h%0My@i>9A#(%EqMZ~m^>%nShC3l}T^ diff --git a/core/config/models.py b/core/config/models.py index 030aeb1..ec675a2 100644 --- a/core/config/models.py +++ b/core/config/models.py @@ -157,7 +157,7 @@ class AIModelConfig(BaseConfig): class PosterConfig(BaseConfig): """海报生成配置""" - target_size: List[int] = Field(default_factory=lambda: [900, 1200]) + target_size: List[int] = Field(default_factory=lambda: [1350, 1800]) additional_images_enabled: bool = True template_selection: str = "random" # random, business, vibrant, original available_templates: List[str] = Field(default_factory=lambda: ["original", "business", "vibrant"]) diff --git a/demo_refactored_templates.py b/demo_refactored_templates.py index e44c886..77c27bf 100644 --- a/demo_refactored_templates.py +++ b/demo_refactored_templates.py @@ -1164,7 +1164,7 @@ class ImageProcessor: class BaseTemplate(ABC): """海报模板基类""" - def __init__(self, size: Tuple[int, int] = (900, 1200)): + def __init__(self, size: Tuple[int, int] = (1350, 1800)): """ 初始化基础模板 @@ -1562,7 +1562,7 @@ class BaseTemplate(ABC): class VibrantTemplate(BaseTemplate): """活力风格海报模板(基于海洋模块)""" - def __init__(self, size: Tuple[int, int] = (900, 1200)): + def __init__(self, size: Tuple[int, int] = (1350, 1800)): """ 初始化活力模板 @@ -2384,7 +2384,7 @@ class VibrantTemplate(BaseTemplate): "备注和标签支持", "智能字体大小调整" ], - "recommended_size": (900, 1200), + "recommended_size": (1350, 1800), "final_size": (1350, 1800), "style": "海洋活力风格", "theme_colors": list(self.ocean_config['ocean_colors'].keys()), @@ -2458,12 +2458,12 @@ class VibrantTemplate(BaseTemplate): class BusinessTemplate(BaseTemplate): """商务风格海报模板(基于酒店模块)""" - def __init__(self, size: Tuple[int, int] = (900, 1200)): + def __init__(self, size: Tuple[int, int] = (1350, 1800)): """ 初始化商务模板 Args: - size: 海报尺寸,默认为酒店模块的尺寸 (900, 1200) + size: 海报尺寸,默认为酒店模块的尺寸 (1350, 1800) """ super().__init__(size) diff --git a/poster/templates/__pycache__/base_template.cpython-312.pyc b/poster/templates/__pycache__/base_template.cpython-312.pyc index 2626a2aec0ccd85ee4ac7249ac606804fab9e44a..d97869c63fbbd94746842fa408e1d16859a997f5 100644 GIT binary patch delta 41 wcmcbsd{>$GG%qg~0}wpVnvgMLBd;GnyBjM5Lna6N$GG%qg~0}v=iH)KrT$m_??-onhlkhy_nauWYz#^lXz0@E1*@hA(b diff --git a/poster/templates/__pycache__/business_template.cpython-312.pyc b/poster/templates/__pycache__/business_template.cpython-312.pyc index 9f293396b4499fdf85c52a4baa656bf3b20a096a..e8f25751887786d6db6b211db41f3733a9f182c2 100644 GIT binary patch delta 37 scmdmTlyS>ZM&8rByj%=G@H}fm#>S1jw_@1cSQ!{HIoLP9i#f&$0Pu1QaR2}S delta 37 scmdmTlyS>ZM&8rByj%=Gpcvhdv0)?ctr+$eW(J1L4J@1A#T;V=0OUCgYybcN diff --git a/poster/templates/__pycache__/vibrant_template.cpython-312.pyc b/poster/templates/__pycache__/vibrant_template.cpython-312.pyc index 923852a04db6e663cb742e00198b043f27f0afa2..260d23d478ea1612b4488c6a25072bd5cb13a510 100644 GIT binary patch delta 10806 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 delta 10961 zcmb7K34Bvk*3Zq}CS8&?O`D}j_lD9^c4VtkWfcTFRW_+@Uns?Hyre+kh3epfNEJCk zE2x7T!mtRFK|s*~6~qMr_0yUeQBlM?&P*Id2T}RXxvw;#g5Nj!{rZ3BZs(qJ-nsXj zdtX=lN&Qt&9sg!rT&x0rLuyvfJJNqw{D63730@O_im|+4cH$}xyAO6*M!=y(o?u+c z42}LhrcksiBsDaBmI61wlMn=ZEmO|7!yR*y3_8Dqc+n3MRmt#XbBr!ViYZfg^lO~= z#BWj7j@2j>wR)XG;YoyhotsiaTG8vPUE&q>I3}dK{+cPJGjAyK#6th{Ym-8TxwQ?I zbrrSsl{H=;iRp$V>BHH3usi)FcZ#FE{=xc<*Z($jCE{O8di4+2%?3ke4oaFIgc_{0JV9JqIRqeY5dJib>5J=uGZ%l*HMki*IXY`)mJX|7{swyAyyD9gJ9ll zwipug2eHF&UH%ys2o`!CQL+HMQ7}{4qJWRv9EsJ9^-YbwTEADeSO{+H`>J+7jejxd zC@fHGcN6_waB}~ljBSIv2CQU1L*l@Z?n6|+1;L{VX{sCR8pTj-eRG|^wyCbxD~d;; zZlIT)hj#`Zu^y(buOax92yVAHo+@64U4yP;3Gl<9tIPLMg_$4*A*8-mtXw4SpmHez zpR0^0A2n+#MX|C)e1>RseWib1NLAhF3n`mwxjoVR`V;r~-2sdw5hL=`5}$*aWuGwoZ=<4{>J)>7Eyj@@Xcwvb`Q2JDTaqf6|>}EOv!eQQd|pr zuU(nRrzV&2B+HC{CU(CNTp&;|5U%sG?eNBRkFtW`ys>Rcbt^VN#RDn9gb5jpDWU(w zN~QsrILw+%L)H)+MexM%cPG9JXC~h1qETWw0T=skM9H!f^(?HMv{AbR$t6zcU!JP< zdl&nCEimQ!b6Vc(+2G{KlCt$K>U<}{nYsM;&k}jQEUfYEZ@}hFsjAi_NSt63~9*sB`AM)!q6Ekigash52XV6o&fVHl|0b5ie?G+KgX=8}x394;Fn1a(yqr!~@d}3~XCHA_wa5-0Qww=^z zFfkZHz**5eoRw@!12*^!_;#Lo-wXxi+3dOC)N-9Vm#lWyh|u*y$Co>v`eNffT~Bm~ zZ&L;5z+YK51ZK>gPA2097PDxUOe*pXjKAA|WAV)ThxxCh`xS&swy3*4pnel*1P9t0 z#itQaXRhvc7%?-Sm4Yy{Fp=9eqPG$rpXp$o@Y2joPcLn0SBz3Qhxq3b1wF+$!5)+(T=ssI<$%qqv#+zDt=irWat1w%33hUR*&Sn2nA zQskA|%U0*9D|gFEc&@6inS4QfgobKxFR%BBG4Ng0CUz#cq56V`nPEfiy?H51G`Qff z&s?SCk{p6{TkKXf7V*avtH!DoEvYT3o-~*=zr6Jxtc+fHUzCVes^aF$rpaEx;#n<1 z>695??%pFtbRI^{Yq4dEI`qSN&ePF%UX`4t%+2o-oNH?HIAHu z3#Nm5^JT=h>)w7w{BI=S_U)w3^;q;|T-lyBY!AgYiM7@63Epbf$HWPSK)j@z z@1Z_AqZBX1ZHtGq3p|ztDSm_EQRP;gmVQhj>E{=~H(w{4r34{yt4gj8BuWYM3xN$! zf;zEJf+?zd3{C8_7%np{d?KnbYrs)SCgf)B;fB1sxuyI1uq2q^8_KT8MU%`$I_R?| zB=>Nz^l(@`F9z~_8O#DX{+8e1lE%51LKgVWpU7lgzWR>=JU$mofzsykD~>gG>)=2g ztUVGqdn7O~?88#Q<@3Pmg?Z`?3c&^sF3gLuFTq?4OAa`=aB_@O(jc8KCBVT2$<)aO z{T9t&?%=(P`Y6pJnpxaU@En4NiEjiCw5(=qJxp6_V;i7uX`gGGsd*uRnP3sYVuBU| zT2tau0zH95Kp9O)H&?{;swAt8-yLTgiW z5Nv>$6;AE*Nczlhu+0M3tSDiR!W}D4vYg23t zsw*27R{D7CxHRo)>(8Et{cRcSDLC2Im%Sb|-2aSH7IWx-A*T2SS>jECw<7EeU!#kN zZ&U5D;Cm1DVJh{u7+~;$HC8YP#%*z1btpLgaHolt)IvP`3w$cvYQXzY1~b7u4|z0Z zAqmIqe&`H~g-6#m>yr6f&jb?;Q3`1=ZCwVlfp1+ujeVPAs~TQE=weQIZJjTPmwVW| zk$rk_a(f(OX)vo}oYN)c|LPsM1NqDHS3M`V;V&I_mH~h5nA#e#JhwOHGU7#cK%05bP)T?UZH`b(u^sh2TX39renP;(i*@o0eNlQqrZ) zDZ~n9IKL^c)f`A#megVv_%pIic#@ha5S(7I;q(j7%L(@B4KJPE_4`O55ijSu+^4z! z@+1hCtDHFVWK&K%FY#&E^i1w=JE0>nq^t4ztEw6oi=UA8`@p<;@Xft8PVRsFOvdxb zD>+?A&G|&R9&zNmF8Pgk1|Hj-r9FV;k}U2iA8$6WrNO^%9;Y%SUdF~Ifwq%msNS|5 zbA&V7$}rlG*lwR4S>!#dbxQ9O$Q7-`ZTKKrj&I9+BZykouzh=<-!_@E^$SwwbAn#0 z^$gX0iQuuw9$ZfI@ObQN!?>>`dc2_j3>a4VG~7G(!v|BeC-319A*uM&@p36?+m zH)Y{Pr!`C5v_c#=aFRsnTs%+ZDIO>DastfxQ$JmzVAy8bssit(3GmUMhS|+h%CFoy zsm>IzN>*UcWLZ;|rL-goNdbIDxpp$l52jCxyrTc!kN-_Z8%sKlBN$IG5l#m4|6lKg zr|MUHFRB0Cd%2RQi~POxa&#B>^jk>WIRq61@@qoMm&*6cojVNdW%&8eh3xHM!S0os zsEEb=F>=(5EOG9#o5(6D1l7bha>i7P?@%qBoI|?CX1{!UMO9Z($KeDksaQkQJcP4! zY&&)P6YgfG0tUU1Z;XypU|R2J<&lcqJY*6Zn;QhLP$7D&{gn+hbzb>IM2Dd(yT3Kc z%={`Ma^UQ>moyNcMglTv$W+yg7gCcN`1!no#~!hXTIp~qE}$+kbaPoTx3R%5iqx`@ zU=hJ$f);{^)vaXpHDhDoz-BG@_V;1m1s~ggO3SQp$1BTC_NX&$mgE*3LCdSv%;J=C zdwG7mkPdB!^3u`+xyy1}(gpsE@_H8>J(M2xE_)8Z;!=|5GKXJ&;~{U{5_O5Z?#OH7 zsl{5-JV0G8bLbV9Q3G8ci>(Yhr_d}_}0R`B@o2h=8H@HNk!Tf11U zSwS7|MSzyq228*txwiT?uU~H4NV;XQ=ok ze0a>2*vmdKpg%r_A4@PyPCf2qhoIrOhxvmY$Fnu;5qR-`CR>_Gf`tTT0{IvTuJ;#c z15{oH>)s#FAo%h7=U5EC9>t3T2A@_~m>z!Ubg>w)e&|tQG7qI6=ID$R5QI2r{IG<@ z!LuKJgZOyJ(rUpkElfy}G>BG7i2@L2$@w)= z83=gc?IPMuz*h$?jF5rukG$PGUmLYO0J@LXw(|QazG}HQ)u14r%&67J-HA)qOWJ5b zky|dY|gBNlZ{~#a8->*>K>FG$;Vvd>{0f4d^ASLE~yUiZavWhwFgQPb?7TR1GF_O~>7<(H+$YEg%PDT`QJQ`<0| zU)^6U%?PRdjZGJ2G<5lrd-lGNZcK~c>zigWDi@A*jl>Hk z<5&IJjlt1h6{({_vxR!35LgLP2`cDC^vEQpQQcr-XCul^5Ls3ZD$@17=p-tgz(wFD z$RNlh$U+z^W+OId!QcPsX_aN8rcxTchfhktgY#aZmJ;wAz&z^rG|50WccO=&55c7& z#giE2&Q&y;yK`@Y(7;hW*L9)zMs$O^%9e{aP1|Um?F4yf+7Ocj+UqSs3ZhjQ2bE{b zt>bGH7rj1^ASs36X(+ES0gj#>I&k8}ObqKM@%rn9$@0aUFh%eP$%0x)6>Ne7|7^ky zk0b<=;DK+gFy(u*b1L;0Kf;mIh{ETM^yKlR3Qi52n?jo5>aK{^iU-@(D} z?YitzNmI-5poBcX$;6Gx*g`Q4oT#QlOVvoB->=Z8c z*DuGw)*no42E6z~nne~nS-6%&=3+a9neg`?u1cE4Rr4bMi>l3rq5sL6d<#i|0_(A5 zHuXU|RwzRx<@hM1Nx3=Qt(SW_zf$?of5x#2h&z|YZiT#ag{74=7-O_asET?&7e(Q% zT->WAr%;XR3PQPXsk-T0-5ux5csYFVoRiIkkIy;nRhVnfxU6|Hc>kgwGvVYpBh3C$ zpT}ntM$kNxOBf+kNtxYaFPRJO`*Bvkc~bVJi96mV*9NkeWlI{oP3BZo(mo$7=Zh!t zGal^%Ast=5(oG0o`aCr9rO$&oU;jM7??9V~Jc0NbsgRzIB4zXsC3&#=d_Q&q4xAro z;~N6sB>4V->@g{zRp^AcpEB9gQ2dk2#uJ1{kmXqdPeuAd?N3ATzYHG#$&vVP8akHN z<~V{*IQmmYE8n%am?U9HxwwBw*@AzI2jFvnID%#xNx9p^{P^-unyUuElOS)$J&Hx`x@2o{AW1$*sVM3GFg}dR!wD{@ zC(o*Qj;5q8{7WG}eGGx(Us8?y*!2pr9mZh8FSf#g9+9UnD(u}w|0*IrK$6knqU$IX zd9KF)7o(L%WNPJmQaJKUUkgP}`G&Wi2Jw%I`yl3mYfNM>HY4LujQjz*v1)$E*z-9W zOX8(B2O&KjEr?0iV&r0~?1$*r(s*IxpyVx^&4b{bV zADM_9KP;^!A^8z0w)==gO?Ij!rEo1&)^NscRElq^#28)a$HakGKEJkz4aD<;@vEFT z{>1_ZqyP9G-~AAKSgE%=I@4^OHhcSE6&u;_3X}DCYH>J@3h~sC7fv8LQDI8& zSP(W5ZC02ptE<9EL?_F%#ng(06otvw(LZdZhE$rt6iy@BMvOATcA_0J?Ib!~VRCkO z!!DxTGNL1Aor7F@rsv=FQb{J4oq)}6Q#~9QUY1Gu&QG=QyjhZ?;=Ax!Zqo&plUD!f2 zD(dK%j*23UiaI;0!-LYOfSQs8>_nrcWC179s3}>%MKo$kbOzGxP7Mp_UG7e2dS|+; z{Rs{GkKN+vm=<(I(CgJ+1Anig^tzQEg2j0!X|6F8C63%H=IOtvch8TXrHfV8GSAEmhDvO zP;^UzbdMxRb4e=08P@dn=e5k%enQWV7ddh|9iGjFCmh2%?OB~pcW1i0)8XoLXLepz z%40FC-#~dx(Fw;@drMC^N}>klMh(orM7{p8tl51hesizgiMMMW^^_^%a9Xew0`S`g zzW`d>emIt8vC-{c#j*^17!AzECb#Dqn7}&PR~cCLt@4?k2DT9JoNxhe)F9a6|478OR3F6utjO_W*NgDf3_0F=rSv#liiVrKWcx3wVn`XRz3#X6Qi}G`k z^n*gNn3XEOksseu&v2hTbK}?reVI`cyV>%reTzM;Kyt7DKsdLPA{P{_aXLHtO-{$@F?VY|a{#z=C9eehsut_Xo4(++R zy2cvZz-q+*X*Z{`zRcHNlFG(=W|10`Nl6pI{R9&T#v_FEBkLQ5<~r|av9^6@DjR1S PZ)c9xb!Qdy Dict[str, Any]: """获取默认的测试内容""" @@ -174,24 +173,24 @@ class VibrantTemplate(BaseTemplate): def _estimate_content_height(self, content: Dict[str, Any]) -> int: """预估内容高度""" - standard_margin = 25 - title_height = 100 - subtitle_height = 80 - button_height = 40 + standard_margin = 38 + title_height = 150 + subtitle_height = 120 + button_height = 60 content_items = content.get("content_items", []) - content_line_height = 32 + content_line_height = 48 content_list_height = len(content_items) * content_line_height - price_height = 90 - ticket_height = 60 + price_height = 135 + ticket_height = 90 remarks = content.get("remarks", []) if isinstance(remarks, str): remarks = [remarks] - remarks_height = len(remarks) * 25 + 10 - footer_height = 40 + remarks_height = len(remarks) * 38 + 15 + footer_height = 60 total_height = ( 20 + title_height + standard_margin + subtitle_height + standard_margin + - button_height + 15 + content_list_height + price_height + ticket_height + - remarks_height + footer_height + 30 + button_height + 23 + content_list_height + price_height + ticket_height + + remarks_height + footer_height + 45 ) return total_height @@ -211,7 +210,7 @@ class VibrantTemplate(BaseTemplate): except: continue if gradient_start is None: - bottom_margin = 60 + bottom_margin = 90 gradient_start = max(height - estimated_height - bottom_margin, height // 2) return gradient_start @@ -297,7 +296,7 @@ class VibrantTemplate(BaseTemplate): return top_color, bottom_color def _calculate_optimal_font_size_enhanced(self, text: str, target_width: int, - max_size: int = 120, min_size: int = 10) -> Tuple[int, int]: + max_size: int = 180, min_size: int = 15) -> Tuple[int, int]: """ 计算文本的最佳字体大小,使其宽度接近目标宽度(增强版本,与demo一致) @@ -382,7 +381,7 @@ class VibrantTemplate(BaseTemplate): left_margin, right_margin = self._calculate_content_margins(content, width, center_x) - footer_y = height - 30 + footer_y = height - 45 self._render_footer(draw, content, footer_y, left_margin, right_margin) title_y = gradient_start + 40 @@ -404,7 +403,7 @@ class VibrantTemplate(BaseTemplate): title_text = content.get("title", "") title_target_width = int(width * 0.95) title_size, title_width = self._calculate_optimal_font_size_enhanced( - title_text, title_target_width, min_size=40, max_size=130 + title_text, title_target_width, min_size=60, max_size=195 ) title_x = center_x - title_width // 2 @@ -412,26 +411,26 @@ class VibrantTemplate(BaseTemplate): slogan_text = content.get("slogan", "") subtitle_target_width = int(width * 0.9) subtitle_size, subtitle_width = self._calculate_optimal_font_size_enhanced( - slogan_text, subtitle_target_width, max_size=50, min_size=20 + slogan_text, subtitle_target_width, max_size=75, min_size=30 ) subtitle_x = center_x - subtitle_width // 2 # 计算内容区域边距 - 减小额外的边距,让内容区域更宽 - padding = 20 # 从30减小到20 + padding = 30 # 从30减小到20,现在按1.5倍调整到30 content_left_margin = min(title_x, subtitle_x) - padding content_right_margin = max(title_x + title_width, subtitle_x + subtitle_width) + padding # 确保边距不超出合理范围,但允许更宽的内容区域 - content_left_margin = max(40, content_left_margin) - content_right_margin = min(width - 40, content_right_margin) + content_left_margin = max(60, content_left_margin) + content_right_margin = min(width - 60, content_right_margin) # 如果内容区域太窄,强制使用更宽的区域 min_content_width = int(width * 0.75) # 至少使用75%的宽度 current_width = content_right_margin - content_left_margin if current_width < min_content_width: extra_width = min_content_width - current_width - content_left_margin = max(30, content_left_margin - extra_width // 2) - content_right_margin = min(width - 30, content_right_margin + extra_width // 2) + content_left_margin = max(45, content_left_margin - extra_width // 2) + content_right_margin = min(width - 45, content_right_margin + extra_width // 2) return content_left_margin, content_right_margin @@ -450,7 +449,7 @@ class VibrantTemplate(BaseTemplate): title_text = content.get("title", "默认标题") title_target_width = int((right - left) * 0.98) title_size, title_actual_width = self._calculate_optimal_font_size_enhanced( - title_text, title_target_width, max_size=140, min_size=40 + title_text, title_target_width, max_size=210, min_size=60 ) title_font = self.text_renderer._load_default_font(title_size) @@ -463,14 +462,14 @@ class VibrantTemplate(BaseTemplate): subtitle_text = content.get("slogan", "") subtitle_target_width = int((right - left) * 0.95) subtitle_size, subtitle_actual_width = self._calculate_optimal_font_size_enhanced( - subtitle_text, subtitle_target_width, max_size=75, min_size=20 + subtitle_text, subtitle_target_width, max_size=113, min_size=30 ) subtitle_font = self.text_renderer._load_default_font(subtitle_size) sub_text_w, sub_text_h = self.text_renderer.get_text_size(subtitle_text, subtitle_font) subtitle_x = center_x - sub_text_w // 2 - title_spacing = 30 + title_spacing = 45 # 在标题下方添加装饰线 line_y = y + text_h + 5 @@ -490,7 +489,7 @@ class VibrantTemplate(BaseTemplate): button_text = content.get("content_button", "套餐内容") button_width, _ = self.text_renderer.get_text_size(button_text, button_font) button_width += 40 - button_height = 50 + button_height = 75 self.text_renderer.draw_rounded_rectangle(draw=draw, position=(x, y), size=(button_width, button_height), radius=20, fill_color=(0, 140, 210, 180), outline_color=(255, 255, 255, 255), outline_width=1) draw.text((x + 20, y + (button_height - 30) // 2), button_text, font=button_font, fill=(255, 255, 255)) @@ -513,7 +512,7 @@ class VibrantTemplate(BaseTemplate): price_text = str(content.get('price', '')) # 确保价格是字符串类型 price_target_width = int((right_margin - x) * 0.7) price_size, price_actual_width = self._calculate_optimal_font_size_enhanced( - price_text, price_target_width, max_size=120, min_size=40 + price_text, price_target_width, max_size=180, min_size=60 ) price_font = self.text_renderer._load_default_font(price_size) @@ -533,7 +532,7 @@ class VibrantTemplate(BaseTemplate): ticket_text = content.get("ticket_type", "") ticket_target_width = int((right_margin - x) * 0.7) ticket_size, ticket_actual_width = self._calculate_optimal_font_size_enhanced( - ticket_text, ticket_target_width, max_size=60, min_size=30 + ticket_text, ticket_target_width, max_size=90, min_size=45 ) ticket_font = self.text_renderer._load_default_font(ticket_size) ticket_x = right_margin - ticket_actual_width @@ -596,10 +595,10 @@ class VibrantTemplate(BaseTemplate): # === 第一步:创建与常规模式完全相同的最终结果作为Reference === canvas = self._create_composite_image(main_image, gradient_start, theme_color) canvas = self._render_texts(canvas, content, gradient_start) - final_canvas = canvas.resize((1350, 1800), Image.LANCZOS) + final_canvas = canvas # === 第二步:为PSD创建可编辑的图层版本 === - final_size = (1350, 1800) + final_size = self.size psd = PSDImage.new("RGBA", final_size, color=(0, 0, 0, 0)) logger.info(f"创建PSD文档,尺寸: {final_size}") @@ -690,7 +689,7 @@ class VibrantTemplate(BaseTemplate): # 4. 左栏内容层 title_y = gradient_start + 40 - subtitle_height = 80 + 30 # 预估副标题高度 + subtitle_height = 120 + 30 # 预估副标题高度 content_start_y = title_y + subtitle_height + 30 content_area_width = right_margin - left_margin left_column_width = int(content_area_width * 0.5) @@ -702,7 +701,7 @@ class VibrantTemplate(BaseTemplate): layers["Right Content"] = self._create_right_column_layer(content, content_start_y, right_column_x, right_margin, canvas_size) # 6. 页脚层 - footer_y = height - 30 + footer_y = height - 45 layers["Footer Info"] = self._create_footer_layer(content, footer_y, left_margin, right_margin, canvas_size) except Exception as e: @@ -724,7 +723,7 @@ class VibrantTemplate(BaseTemplate): left_margin, right_margin = self._calculate_content_margins(content, width, center_x) # 页脚 - footer_y = height - 30 + footer_y = height - 45 self._render_footer(draw, content, footer_y, left_margin, right_margin) # 标题和副标题 @@ -759,7 +758,7 @@ class VibrantTemplate(BaseTemplate): left_margin, right_margin = self._calculate_content_margins(content, width, center_x) # 页脚 - footer_y = height - 30 + footer_y = height - 45 self._render_footer(draw, content, footer_y, left_margin, right_margin) # 标题和副标题 @@ -797,7 +796,7 @@ class VibrantTemplate(BaseTemplate): title_text = content.get("title", "默认标题") title_target_width = int((right_margin - left_margin) * 0.98) title_size, title_actual_width = self._calculate_optimal_font_size_enhanced( - title_text, title_target_width, max_size=140, min_size=40 + title_text, title_target_width, max_size=210, min_size=60 ) try: title_font = ImageFont.truetype(self.chinese_font_path, title_size) @@ -818,7 +817,7 @@ class VibrantTemplate(BaseTemplate): if subtitle_text: subtitle_target_width = int((right_margin - left_margin) * 0.95) subtitle_size, subtitle_actual_width = self._calculate_optimal_font_size_enhanced( - subtitle_text, subtitle_target_width, max_size=75, min_size=20 + subtitle_text, subtitle_target_width, max_size=113, min_size=30 ) try: subtitle_font = ImageFont.truetype(self.chinese_font_path, subtitle_size) @@ -836,7 +835,7 @@ class VibrantTemplate(BaseTemplate): footer_canvas = Image.new('RGBA', canvas_size, (0, 0, 0, 0)) footer_draw = ImageDraw.Draw(footer_canvas) - footer_y = height - 30 + footer_y = height - 45 try: footer_font = ImageFont.truetype(self.chinese_font_path, 18) except: @@ -899,7 +898,7 @@ class VibrantTemplate(BaseTemplate): # 使用指定的中文字体 title_size, title_actual_width = self._calculate_optimal_font_size_enhanced( - title_text, title_target_width, max_size=140, min_size=40 + title_text, title_target_width, max_size=210, min_size=60 ) try: @@ -941,7 +940,7 @@ class VibrantTemplate(BaseTemplate): subtitle_target_width = int((right_margin - left_margin) * 0.95) subtitle_size, subtitle_actual_width = self._calculate_optimal_font_size_enhanced( - subtitle_text, subtitle_target_width, max_size=75, min_size=20 + subtitle_text, subtitle_target_width, max_size=113, min_size=30 ) # 使用指定的中文字体 @@ -981,7 +980,7 @@ class VibrantTemplate(BaseTemplate): title_text = content.get("title", "默认标题") title_target_width = int((right_margin - left_margin) * 0.98) title_size, title_actual_width = self._calculate_optimal_font_size_enhanced( - title_text, title_target_width, max_size=140, min_size=40 + title_text, title_target_width, max_size=210, min_size=60 ) # 使用中文字体计算标题尺寸 @@ -1027,7 +1026,7 @@ class VibrantTemplate(BaseTemplate): bbox = button_font.getbbox(button_text) button_text_width = bbox[2] - bbox[0] button_width = button_text_width + 40 - button_height = 50 + button_height = 75 # 绘制简单的矩形按钮 draw.rounded_rectangle([x, y, x + button_width, y + button_height], @@ -1070,7 +1069,7 @@ class VibrantTemplate(BaseTemplate): if price_text: price_target_width = int((right_margin - x) * 0.7) price_size, price_actual_width = self._calculate_optimal_font_size_enhanced( - price_text, price_target_width, max_size=120, min_size=40 + price_text, price_target_width, max_size=180, min_size=60 ) try: @@ -1101,7 +1100,7 @@ class VibrantTemplate(BaseTemplate): if ticket_text: ticket_target_width = int((right_margin - x) * 0.7) ticket_size, ticket_actual_width = self._calculate_optimal_font_size_enhanced( - ticket_text, ticket_target_width, max_size=60, min_size=30 + ticket_text, ticket_target_width, max_size=90, min_size=45 ) try: @@ -1228,7 +1227,7 @@ class VibrantTemplate(BaseTemplate): title_text = content.get("title", "") title_target_width = int((right_margin - left_margin) * 0.98) title_size, title_actual_width = self._calculate_optimal_font_size_enhanced( - title_text, title_target_width, max_size=140, min_size=40 + title_text, title_target_width, max_size=210, min_size=60 ) title_x = center_x - title_actual_width // 2 title_y = gradient_start + 40 @@ -1237,7 +1236,7 @@ class VibrantTemplate(BaseTemplate): subtitle_text = content.get("slogan", "") subtitle_target_width = int((right_margin - left_margin) * 0.95) subtitle_size, subtitle_actual_width = self._calculate_optimal_font_size_enhanced( - subtitle_text, subtitle_target_width, max_size=75, min_size=20 + subtitle_text, subtitle_target_width, max_size=113, min_size=30 ) subtitle_x = center_x - subtitle_actual_width // 2 subtitle_y = title_y + 100 + 30 # 标题高度 + 间距 @@ -1252,14 +1251,14 @@ class VibrantTemplate(BaseTemplate): price_text = str(content.get('price', '')) price_target_width = int((right_margin - right_column_x) * 0.7) price_size, price_actual_width = self._calculate_optimal_font_size_enhanced( - price_text, price_target_width, max_size=120, min_size=40 + price_text, price_target_width, max_size=180, min_size=60 ) # 票种布局计算 ticket_text = content.get("ticket_type", "") ticket_target_width = int((right_margin - right_column_x) * 0.7) ticket_size, ticket_actual_width = self._calculate_optimal_font_size_enhanced( - ticket_text, ticket_target_width, max_size=60, min_size=30 + ticket_text, ticket_target_width, max_size=90, min_size=45 ) layout_params = { @@ -1315,10 +1314,9 @@ class VibrantTemplate(BaseTemplate): """使用统一布局参数渲染PNG""" canvas = self._create_composite_image(main_image, gradient_start, theme_color) canvas = self._render_texts(canvas, content, gradient_start) - final_image = canvas.resize((1350, 1800), Image.LANCZOS) return { - "image": final_image, + "image": canvas, "layout_params": layout_params, "format": "png" } @@ -1327,7 +1325,7 @@ class VibrantTemplate(BaseTemplate): theme_color: Optional[str], gradient_start: int, layout_params: Dict[str, Any]) -> Dict[str, Any]: """使用统一布局参数渲染JSON""" - final_width, final_height = 1350, 1800 + final_width, final_height = self.size fabric_objects = [] # 1. 背景图片 @@ -1454,7 +1452,7 @@ class VibrantTemplate(BaseTemplate): "height": 100, "text": layout_params["title_text"], "fontSize": layout_params["title_size"], - "fontFamily": "Arial Black", + "fontFamily": "兰亭粗黑简", "fontWeight": "bold", "fill": "white", "textAlign": "center", @@ -1479,7 +1477,7 @@ class VibrantTemplate(BaseTemplate): "height": 80, "text": layout_params["subtitle_text"], "fontSize": layout_params["subtitle_size"], - "fontFamily": "Arial", + "fontFamily": "兰亭粗黑简", "fill": "white", "textAlign": "center", "lineHeight": 1.3, @@ -1511,9 +1509,9 @@ class VibrantTemplate(BaseTemplate): "y2": 0, "stroke": "rgba(215, 215, 215, 0.3)", "strokeWidth": 3, - "opacity": 1, - "angle": 0, - "scaleX": 1, + "opacity": 1, + "angle": 0, + "scaleX": 1, "scaleY": 1, "selectable": False, "evented": False @@ -1533,33 +1531,33 @@ class VibrantTemplate(BaseTemplate): "strokeWidth": 1, "rx": 20, "ry": 20, - "opacity": 1, - "angle": 0, - "scaleX": 1, + "opacity": 1, + "angle": 0, + "scaleX": 1, "scaleY": 1, "selectable": False, "evented": False - } + } text_objects.append(button_obj) button_text_obj = { - "type": "textbox", + "type": "textbox", "left": layout_params["left_margin"] + 20, "top": layout_params["content_start_y"] + 10, "width": 160, - "height": 30, + "height": 30, "text": button_text, - "fontSize": 30, - "fontFamily": "Arial", + "fontSize": 45, + "fontFamily": "兰亭粗黑简", "fontWeight": "bold", "fill": "white", - "textAlign": "center", + "textAlign": "center", "lineHeight": 1.0, - "opacity": 1, - "angle": 0, - "scaleX": 1, - "scaleY": 1 - } + "opacity": 1, + "angle": 0, + "scaleX": 1, + "scaleY": 1 + } text_objects.append(button_text_obj) # 5. 左栏内容列表 @@ -1573,14 +1571,14 @@ class VibrantTemplate(BaseTemplate): "width": layout_params["left_column_width"], "height": 35, "text": f"• {item}", - "fontSize": 28, - "fontFamily": "Arial", + "fontSize": 42, + "fontFamily": "兰亭粗黑简", "fill": "white", "textAlign": "left", "lineHeight": 1.2, - "opacity": 1, - "angle": 0, - "scaleX": 1, + "opacity": 1, + "angle": 0, + "scaleX": 1, "scaleY": 1 } text_objects.append(item_obj) @@ -1596,15 +1594,15 @@ class VibrantTemplate(BaseTemplate): "height": 80, "text": layout_params["price_text"], "fontSize": layout_params["price_size"], - "fontFamily": "Arial Black", + "fontFamily": "兰亭粗黑简", "fontWeight": "bold", "fill": "white", "textAlign": "right", "lineHeight": 1.0, "opacity": 1, - "angle": 0, - "scaleX": 1, - "scaleY": 1, + "angle": 0, + "scaleX": 1, + "scaleY": 1, "shadow": { "color": "rgba(0, 0, 0, 0.5)", "blur": 2, @@ -1616,20 +1614,20 @@ class VibrantTemplate(BaseTemplate): # CNY起后缀 suffix_obj = { - "type": "textbox", + "type": "textbox", "left": price_x + layout_params["price_width"], "top": layout_params["content_start_y"] + 50, "width": 60, "height": 30, "text": "CNY起", "fontSize": int(layout_params["price_size"] * 0.3), - "fontFamily": "Arial", - "fill": "white", - "textAlign": "left", + "fontFamily": "兰亭粗黑简", + "fill": "white", + "textAlign": "left", "lineHeight": 1.0, - "opacity": 1, - "angle": 0, - "scaleX": 1, + "opacity": 1, + "angle": 0, + "scaleX": 1, "scaleY": 1 } text_objects.append(suffix_obj) @@ -1646,10 +1644,10 @@ class VibrantTemplate(BaseTemplate): "y2": 0, "stroke": "rgba(255, 255, 255, 0.3)", "strokeWidth": 2, - "opacity": 1, - "angle": 0, - "scaleX": 1, - "scaleY": 1, + "opacity": 1, + "angle": 0, + "scaleX": 1, + "scaleY": 1, "selectable": False, "evented": False } @@ -1659,22 +1657,22 @@ class VibrantTemplate(BaseTemplate): if layout_params["ticket_text"]: ticket_x = layout_params["right_margin"] - layout_params["ticket_width"] ticket_obj = { - "type": "textbox", + "type": "textbox", "left": ticket_x, "top": layout_params["content_start_y"] + 115, "width": layout_params["ticket_width"], "height": 60, "text": layout_params["ticket_text"], "fontSize": layout_params["ticket_size"], - "fontFamily": "Arial", + "fontFamily": "兰亭粗黑简", "fontWeight": "bold", - "fill": "white", + "fill": "white", "textAlign": "right", "lineHeight": 1.0, - "opacity": 1, - "angle": 0, - "scaleX": 1, - "scaleY": 1, + "opacity": 1, + "angle": 0, + "scaleX": 1, + "scaleY": 1, "shadow": { "color": "rgba(0, 0, 0, 0.5)", "blur": 2, @@ -1696,8 +1694,8 @@ class VibrantTemplate(BaseTemplate): "width": layout_params["right_margin"] - layout_params["right_column_x"], "height": 20, "text": remark, - "fontSize": 16, - "fontFamily": "Arial", + "fontSize": 24, + "fontFamily": "兰亭粗黑简", "fill": "rgba(255, 255, 255, 0.8)", "textAlign": "right", "lineHeight": 1.0, @@ -1712,44 +1710,44 @@ class VibrantTemplate(BaseTemplate): footer_y = layout_params["footer_y"] if tag := content.get("tag"): tag_obj = { - "type": "textbox", + "type": "textbox", "left": layout_params["left_margin"], "top": footer_y, "width": 200, "height": 25, "text": tag, - "fontSize": 18, - "fontFamily": "Arial", + "fontSize": 27, + "fontFamily": "兰亭粗黑简", "fill": "white", - "textAlign": "left", + "textAlign": "left", "lineHeight": 1.0, - "opacity": 1, - "angle": 0, - "scaleX": 1, + "opacity": 1, + "angle": 0, + "scaleX": 1, "scaleY": 1 } text_objects.append(tag_obj) if pagination := content.get("pagination"): pagination_obj = { - "type": "textbox", + "type": "textbox", "left": layout_params["right_margin"] - 200, - "top": footer_y, + "top": footer_y, "width": 200, "height": 25, "text": pagination, - "fontSize": 18, - "fontFamily": "Arial", + "fontSize": 27, + "fontFamily": "兰亭粗黑简", "fill": "white", "textAlign": "right", "lineHeight": 1.0, - "opacity": 1, - "angle": 0, - "scaleX": 1, + "opacity": 1, + "angle": 0, + "scaleX": 1, "scaleY": 1 } text_objects.append(pagination_obj) - + except Exception as e: logger.error(f"创建精确文本对象失败: {e}") diff --git a/poster_template.py b/poster_template.py index 0b75ea2..27418eb 100644 --- a/poster_template.py +++ b/poster_template.py @@ -1040,7 +1040,7 @@ class ImageCollageCreator: 参数: input_dir: 输入图片目录路径 style: 拼贴样式,如不指定则随机选择 - target_size: 目标尺寸,默认为(900, 1200) + target_size: 目标尺寸,默认为(1350, 1800) 返回: tuple: (拼贴图, 选择的图片名称列表),如果创建失败则返回(None, []) @@ -1049,7 +1049,7 @@ class ImageCollageCreator: try: # 设置默认尺寸为3:4比例 if target_size is None: - target_size = (900, 1200) # 3:4比例 + target_size = (1350, 1800) # 3:4比例 # 如果没有指定样式,随机选择一种 if style is None or style not in self.collage_styles: @@ -1914,7 +1914,7 @@ class PosterNotesCreator: np.random.seed(seed) # 调用core.simple_collage模块处理图像 - target_size = (900, 1200) # 3:4比例 + target_size = (1350, 1800) # 3:4比例 collage_images, used_image_filenames = process_collage( temp_dir, style=style, @@ -2070,7 +2070,7 @@ class PosterNotesCreator: np.random.seed(seed) # 调用core.simple_collage模块处理图像 - target_size = (900, 1200) # 3:4比例 + target_size = (1350, 1800) # 3:4比例 collage_images, used_image_filenames = process_collage( temp_dir, style=style, @@ -3274,13 +3274,13 @@ def select_additional_images( collage_style ) -def process_directory(directory_path, style=None, target_size=(900, 1200), output_count=1): +def process_directory(directory_path, style=None, target_size=(1350, 1800), output_count=1): """ 处理指定目录中的图片,创建指定数量的拼贴图。 参数: directory_path: 包含图片的目录路径 - target_size: 拼贴图目标尺寸,默认为 (900, 1200) + target_size: 拼贴图目标尺寸,默认为 (1350, 1800) output_count: 需要生成的拼贴图数量,默认为 1 返回: @@ -3371,7 +3371,7 @@ def main(): logging.info("方法 1: 使用 process_directory 函数生成拼贴图...") collages_1, used_image_names_1 = process_directory( directory_path=test_directory, - target_size=(900, 1200), # 默认 3:4 比例 + target_size=(1350, 1800), # 默认 3:4 比例 output_count=2 # 创建 2 张不同的拼贴图 ) diff --git a/test_size_adjustment_result.png b/test_size_adjustment_result.png new file mode 100644 index 0000000000000000000000000000000000000000..cdbe95e6333f3470fc926cbe4100dbfba8e6843b GIT binary patch literal 209808 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

T>F2V8t+0VGfJuDD*hKC0?T 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�Xy5)5Y4BjXk3f`mX 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 literal 0 HcmV?d00001 diff --git a/utils/__pycache__/image_processor.cpython-312.pyc b/utils/__pycache__/image_processor.cpython-312.pyc index ae811b123fe644cf931a7737e1ff01bbccc621cc..9ced660954088a61163d875bdc6794e2849b3444 100644 GIT binary patch delta 81 zcmcZ=e=DB%G%qg~0}wpVnvkKsk$0{RyBjM5Lna6N=8Zb188xzsE)-W>FRr@?L|OHp g7+e@xB|bAVunB!&0x>`MFag;Q?7cTH(KBNN0AsZp!2kdN delta 81 zcmcZ=e=DB%G%qg~0}vcuQjwv$k$0{RdkZrIL*@pS%^P)2GiqcOUMMQRUQ~M#h%)Ow gF}N_YN_=K!U=#Yl1Y&;hVFI!r*n4eWqG!ek0FdGvlK=n! diff --git a/utils/image_processor.py b/utils/image_processor.py index aa31fa7..11bf762 100644 --- a/utils/image_processor.py +++ b/utils/image_processor.py @@ -185,7 +185,7 @@ class ImageProcessor: return image @staticmethod - def create_collage_from_paths(image_paths: List[str], target_size: Tuple[int, int] = (900, 1200)) -> Optional[Image.Image]: + def create_collage_from_paths(image_paths: List[str], target_size: Tuple[int, int] = (1350, 1800)) -> Optional[Image.Image]: """ 从图像路径列表创建拼图 @@ -257,7 +257,7 @@ class ImageProcessor: @staticmethod def process_images_for_poster(image_paths: List[str], - target_size: Tuple[int, int] = (900, 1200), + target_size: Tuple[int, int] = (1350, 1800), create_collage: bool = False) -> Dict[str, Any]: """ 处理图像用于海报生成