簡體   English   中英

C#調整圖像大小並使其適合正方形,同時保持寬高比

[英]c# resize image and fit it into the square while preserving aspect ratio

我為網站做的工作很少,我想自動調整圖像的大小。但是,不僅要自動調整大小,還要保持它們成比例,即使我調整其寬度或高度也是如此。 我想添加其他白色邊框以補償新空間。

我過去從未做過任何圖像工作,應該如何處理?

計算寬度是否合適,然后根據容器的高度檢查高度。 如果更高,則計算寬度以使高度合適:

newHeight = oldHeight * containerWidth / oldWidth;
if (newHeight <= containerHeight) {
  newWidth = containerWidth;
} else {
  newWidth = oldWidth * containerHeight / oldHeight;
  newHeight = containerHeight;
}

現在,您可以計算將圖像放置在中心的位置:

x = (containerWidth - newWidth) / 2;
y = (containerHeight - newHeight) / 2;

如果您談論的是單源圖像處理,即在其中上傳主圖像並通過查詢字符串請求其原始版本,那么我可以為您提供幫助。

我是http://imageresizing.net/的作者。 這是一個由附加插件資助的開源庫。

您所需的功能已包含在免費內核中-只需安裝?width = 100&height = 100並將其添加到任何圖像URL。

從ASP.NET進行圖像處理非常棘手。 除非您具有強大的Win / C ++背景,否則您實際上不應該這樣做。 .NET不會垃圾收集System.Drawing實例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM