首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C#根据原始图像改变水印图像大小

C#根据原始图像改变水印图像大小
EN

Stack Overflow用户
提问于 2013-05-02 07:34:10
回答 2查看 1.6K关注 0票数 0

我在上传之前给我的图像做水印。我面临的问题是如果图像很小,水印看起来就很大.我想根据原始图像改变水印图像的大小。

例如:水印图像应该是原始图像的30%。我在c#上这样做:

imageGraphics.FillRectangle(watermarkBrush,新矩形(新点(x,y),新大小(watermarkImage.Width+ 1,watermarkImage.Height));

我该怎么做才能先得到图像大小,然后相应地改变水印图像大小?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-02 07:59:37

好吧,then...something喜欢:

代码语言:javascript
复制
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)));
}

(没有测试,您还需要在.(圆点)

调整大小的代码:Resizing an Image without losing any quality

希望这能有所帮助!

票数 2
EN

Stack Overflow用户

发布于 2018-05-19 09:38:36

NReco.VideoConverter.FFMpegConverter ffMpeg =新NReco.VideoConverter.FFMpegConverter();

代码语言:javascript
复制
            string pathToVideoFile = "D:\\Projects\\Project\\Db_Script\\TAR_Dummy\\TAR_Dummy\\Videos\\"+postedFile.FileName;
            string imagePath = "D:\\Watermarks\\30.png";
            string Id = Guid.NewGuid().ToString();

            //Convert videos from one format to another
            ffMpeg.ConvertMedia(pathToVideoFile, "D:\\Watermarks\\"+Id+".flv", Format.flv);

            //Add Aatermark to videos
            ffMpeg.Invoke("-i "+pathToVideoFile+ " -i "+ imagePath + " -filter_complex \"overlay=10:10\" D:\\Watermarks\\Images\\" + Id+".mp4");

            //Get video thumbnail
            ffMpeg.GetVideoThumbnail(pathToVideoFile, "D:\\Watermarks\\Images\\" + Id.Substring(Id.Length-5)+".jpg");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16332669

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档