Files
rust_imgapi/Ne_Yaptim.md
Beyhan Oğur dd72c6220d first commit
2026-04-26 22:32:52 +03:00

1.6 KiB
Raw Blame History

Ne yaptım src/images/processor/mod.rs içinde resize/crop mantığını crop moduna göre gerçek hale getirdim:

fill → esnetir (distortion olabilir, bilinçli) cover / center / top / bottom / left / right / smart → oran korunur, sonra crop ile hedef ebada getirilir contain → oran korunur, sadece sığdırır (kırpma yok) Ek olarak:

libvips encode hatasında otomatik image fallback var. Böylece Dockerdaki PngsaveBufferError gibi hatalarda kullanıcıya 500 dönmek yerine işleme devam eder. Neden bu senin sorunu çözer Senin örnekte 1500x1500 verirken yüzün “genişleyip daralması” gibi bozulma fill davranışından olurdu. Artık default cover/center hattı oranı koruyarak çalışır; görüntü bozulmaz, gerekirse kırpılır.

Not Bu son derleme denemesinde ağ/sandbox yüzünden utoipa-swagger-ui zip indirme adımı 502 verdi (kod hatası değil). Uygulamayı sende normal ortamda çalıştırıp aynı requesti tekrar denersen farkı görürsün.

İstersen bir sonraki adımda cover için hangi taraftan kırpacağını (top/left/right/...) endpoint örnekleriyle net bir mini tablo halinde yazayım.

Harika, bu şekilde devam edelim.

Hazır olunca şu sırayla kontrol et:

docker compose build --no-cache api docker compose up -d api Container içinde: vips --version vips -l | rg -i "pngsave|webpsave|jpegsave|heifsave|avif" APIye test isteği atıp logda şunu kontrol et: image processing worker concurrency ... active_concurrency=... mümkünse artık libvips encode failed görünmemeli Takıldığın logu at, beraber anında yorumlayalım.