簡體   English   中英

C#中的圖像邊框操作

[英]Image border manipulation in C#

我需要在我為公司制作的網站上調整圖片大小。 圖片必須是非常特定的尺寸,如果比例不正確,我必須能夠用邊框填充圖像以使其“適合”。 我不確定解決這個問題的最佳方法是什么。 我的下意識就是根據需要簡單地將矩形添加到圖像中,但是我無法找到一種方法來制作這樣的合成圖像。 我應該制作一個合適的空白矩形,並在上面疊加我的圖像嗎? 我應該最關注哪些庫或函數?

調整大小和保存所有工作都很棒 - 這不是問題。 添加此填充是唯一的問題。

創建一個適當大小的新Bitmap ,用您想要的填充顏色填充它,並在中心繪制原始圖像:

Bitmap newImage = new Bitmap(width, height);
using(Graphics graphics = Graphics.FromImage(newImage))
{
    graphics.Clear(paddingColor);
    int x = (newImage.Width - originalImage.Width) / 2;
    int y = (newImage.Height - originalImage.Height) / 2;
    graphics.DrawImage(originalImage, x, y);
}

最簡單的方法是從最終圖像中所需尺寸的Bitmap開始,然后使用Graphics.Clear繪制所需的背景顏色,然后使用Graphics.DrawImage將原始圖像復制到主Bitmap上,根據需要調整其大小在此步驟中,將InterpolationMode設置為HighQualityBicubic以獲得最佳質量。

暫無
暫無

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

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