asp.net | چسباندن لوگو به عکس در هنگام آپلود، با استفاده از System.Drawing namespace
دوشنبه 8 دی 1393در پروژه ASP.NET ، برای افزودن لوگوی (تصویری یا متنی) به عکس در هنگام آپلود ، می خوایم با استفاده از System.Drawing namespace ؛ از تابع DrawImage() برای چسباندن لوگوی تصویری و از تابع DrawString() برای چسباندن لوگوی متنی بهره ببریم.
سلام.
میخوایم به عکسی در پروژه ASP.NET ؛ با استفاده از کتابخانه System.Drawing namespace ؛
از تابع DrawImage() برای اضافه کردن لوگوی تصویری ،
و از تابع DrawString() برای افزودن لوگوی متنی بهره ببریم
الف - اضافه کردن System.Drawing namespace :
using System.Drawing; //لازم
ب - استفاده از توابع DrawImage و DrawString :
در قسمت کدهای مارکآپ :
<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
<asp:FileUpload ID="FileUpload1" runat="server" />
<asp:Button ID="Button1" runat="server" Text="افزودن لوگو" OnClick="Button1_Click" />
</asp:Content>
در قسمت کدهای سی شارپ :
using System;
using System.Web.UI;
using System.Drawing; //لازم
namespace AddLogoOnImage_asp.net
{
public partial class _Default : Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
//ایجاد شئ بیتمپ از تصویر پست شده(انتخاب شده) برای آپلود
Bitmap bmpUpload = new Bitmap(FileUpload1.PostedFile.InputStream, false);
//ایجاد شئ ای از کلاس گرافیکس ، برای دستکاری تصویر انتخاب شده
Graphics graphicsObj = Graphics.FromImage(bmpUpload);
//لوگوی متنی
string txtLogo = "© 1393/10/08";
//مختصات مکانی لوگوی متنی
Point positionTextLogo = new Point(5, 5);
//در نظر گرفتن رنگ
Brush brush = new SolidBrush(Color.White);
//چسباندن لوگوی متنی
graphicsObj.DrawString(txtLogo, new System.Drawing.Font("tahoma", 16, FontStyle.Bold, GraphicsUnit.Pixel), brush, positionTextLogo);
//ایجاد شئ بیتمپ از لوگوی تصویری مورد نظر
Bitmap bmpLogo = new Bitmap(Server.MapPath("Images") + "\\" + "logo.jpg");
//مختصات مکانی لوگوی تصویری
Point positionImgLogo = new Point(5, (bmpUpload.Height - (bmpLogo.Height + 5)));
//چسباندن لوگوی تصویری
graphicsObj.DrawImage(bmpLogo, positionImgLogo);
//ذخیره تصویر نهایی در مسیر مورد نظر
bmpUpload.Save(Server.MapPath("Images") + "\\" + System.IO.Path.GetFileName(FileUpload1.PostedFile.FileName) + ".jpg");
}
}
}
نکته !
موقعیت های مکانی لوگوها برای چسباندن روی اندازه های مختلف تصویر ، متفاوت خواهد بود.
این مقاله صرفا جهت معرفی بود. از ایده دیگری درباره موقعیت مکانی لوگوها استفاده نمایید.
مرتبط در برنامه نویسان :
asp.net mvc | چسباندن لوگو به عکس در هنگام آپلود، با استفاده از Razor WebImage helper
http://barnamenevisan.org/Articles/Article677.html
http://barnamenevisan.org/Articles/Article2454.html
مرتبط در سایت های دیگر : استفاده از GDI
http://www.codeproject.com/Articles/2927/Creating-a-Watermarked-Photograph-with-GDI-for-NET
- ASP.net
- 4k بازدید
- 11 تشکر