تبليغات X
نوشتن متن بر روی عکس به صورت دینامیک

HOW 2 LEARN ASP.NET
نویسنده : hima
تاریخ  : ۱۳۸۵/۵/۲۶
امتیاز :
بازدید : 7566
موضوع : نوشتن متن بر روی عکس به صورت دینامیک
توضیحات : این مقاله به شما نشان می دهد که چگونه به صورت دینامیک متنی را بر روی عکسی که از قبل وجود داشته بنویسیم. این برنامه با استفاده از Asp.Net و C# نوشته شده است.
  دانلود مقاله   نسخه قابل چاپ

مقدمه 

این مقاله به شما نشان می دهد که چگونه به صورت دینامیک متنی را بر روی عکسی که از قبل وجود داشته بنویسیم. این برنامه با استفاده از
Asp.Net و C# نوشته شده است.
در این مثال من، یک عکس از پسرم دارم و متن
"That's my boy"
را روی آن می نویسم. همچنین برای نشان دادن اینکه می توان گرافیک و رسم و متن را با هم به کار ببریم، من سپس یک شکل بیضی را دور متن رسم کرده ام و آن را روی عکس قرار داده ام.
برای اینکه بتوانید این برنامه را بنویسید لازم است که رفرنس های زیر را به برنامه اضافه کنید: 
     using System.Drawing;
     using
System.Drawing.Imaging;
     using
System.Drawing.Drawing2D;
     using
System.Drawing.Text;
همچنین ممکن است شما بخواهید جای متن و بیضی را در روی عکستان تغییر دهید. به یاد داشته باشید که مکان متن و شکل بیضی هر دو بر روی مختصات X و Y بنا نهاده شده اند. بنابراین، اگر بخواهید متن و یا بیضی را به سمت بالا حرکت دهید، باید مقدار پارامتر Y را تغییر دهید. و اگر بخواهید متن و بیضی را به صورت افقی حرکت دهید، باید مقدار پارامتر X را تغییر دهید.
به طور اساسی 6 مرحله برای این مثال وجود دارد:


           1-     
بارگذاری عکس: 
//Load the Image to be written on.
Bitmap bitMapImage = new
   System.Drawing.Bitmap(Server.MapPath("dallen.jpg" )  );
Graphics graphicImage = Graphics.FromImage( bitMapImage );
2-      ست کردن شیء graphics تا به صورت هموار (smooth)در آید: 
//Smooth graphics is nice.
graphicImage.SmoothingMode = SmoothingMode.AntiAlias;
3-      نوشتن متن. اینجا جایی است که باید فونت خود را ست کنید. مختصات X و Y در نقطه ی جدیدی هستند.(100=X , 250=Y) 
//Write your text.
graphicImage.DrawString( "That's my boy!",
   new Font("Arial", 12,FontStyle.Bold ),
   SystemBrushes.WindowText, new Point( 100, 250 ) );
4-      رسم کردن بیضی اطراف متن. نکته: برای ساختن اندازه ی دلخواه برای بیضی خود با اعداد بازی کنید. 
//I am drawing a oval around my text.
graphicImage.DrawArc(new Pen(Color.Red, 3), 90, 235, 150, 50, 0, 360);
5-      ست کردن خصوصیت Content Type به jpg و سپس نوشتن عکس در response stream 
//Set the content type
Response.ContentType="image/jpeg";

//Save the new image to the response output stream.

bitMapImage.Save(Response.OutputStream, ImageFormat.Jpeg);
6-      پاک کردن حافظه 
//Clean house.
graphicImage.Dispose();
bitMapImage.Dispose();

 

 

 
امتیاز بدهید :

نویسنده : m golbar1381@yahoo.com ۱۳۸۸ سيزدهم مهر
با سلام راستش عکسی رو دیدم که با فنت خیلی با حال به صرت تو خالی چیزی نوشته شده بود خیلی خوشم اومد ازش گفتم بیام اینتر نت شاید نر م افزارش خاصی داشته باشه دانلودش کنم ولی چیزی پیدا نشد اگه بخوام بیشتر در مورد فنته توضیح بدم میشه گفت در واقع با یه فنت بزرگ که مث دود باشه کلمه ای مثل یه اسم رو نوشته بود دبه صورتی که درون فنت خالی وعکس پیدا بود ولی حاشیه های ان چون گردی مشخص شده بود که متن رو تشکیل میداد انگار با یه خودکار چیزی رو بنویسی بعد با انگشت جوهر رو به طرف بیرون پخش کنی. می خواستم بدونم اگه لطف کنین اسم این نرم افزار و یه جورایی طریقه استفادشو بهم بگین ممنونتون میشم. من منتظر شما می مونم خدا نگهدار
نویسنده : ئشسخعي m.koorosh@gmail.com ۱۳۸۸ سي و يکم ارديبهشت
آفرين مرحبا معلومه كه يه چيزايي حاليت ميشه بابا خفن اي ولله بابا دست مريضا خيلي واردي خيلي خفني
نویسنده : جواد dr.bloger@gmail.com ۱۳۸۷ بيست و پنجم شهريور
سلام، بسيار ممنون از اين زحمات، من براي ذخيره عكس مشكل پيدا كردم، overwrite نميشه، يعني حتما بايد يه مسير جديد بدم تا عكس ذخيره بشه،
من ميخوام عكسو بگيرم كم و زيادش كنم بعد روي خودش ذخيرش كنم، ممنون ميشم كمكم كنيد.

 
نظر بدهید :
لطفا سوالات فنی خود را در تالار گفتگو www.forum.how2learnasp.net مطرح نمایید
نام :  
ایمیل :    
نظرات :
 
Xml rss feed

 

Valid CSS! Atom rss feed
Ali Delshad Official Site