음은 ... 뭔가 같은 : Resizing an Image without losing any quality
:
Bitmap yourImage = ...;
Bitmap yourWatermark = ...;
int newWaterWidth = (int)((float)yourImage.Width * .3);
int newWaterHeight = (int)((float)yourImage.Height* .3);
using(Bitmap resizedWaterm = new Bitmap(newWaterWidth, newWaterHeight))
using(Graphics g = Graphics.FromImage((Image)resizedWaterm))
{
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
g.DrawImage(yourWatermark, 0, 0, newWaterWidth , newWaterHeight);
}
int x = ..., y = ...;
using(Graphics g2 = Graphics.FromImage((Image)resizedWaterm))
{
g2.FillRectangle(watermarkBrush, new Rectangle(new Point(x, y), new Size(watermarkImage.Width + 1, watermarkImage.Height)));
}
에서 크기를 조정할
코드 (테스트하지, 당신은 또한 ... 점에서 값을 입력해야합니다)
희망이 도움이됩니다!
음 ... 어떻게 워터 마크를 적용하고 있습니까? 'Image' 객체 패밀리는'.Width'와'.Height' 값을 가지고 있습니다 - 여러분은 aspect 배급을 유지하는 간단한 스케일링 연산을 할 필요가 있습니다. 워터 마크를 넣었을 때 코드없이 우리가 도울 수는 없을 것입니다 – Basic
@ 워터 마크를위한 기본 : imageGraphics.FillRectangle (watermarkBrush, 새 Rectangle (새 Point (x, y), 새 크기 (watermarkImage.Width + 1, watermarkImage.Height)))); –