الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال حول إضافة نص على صورة

بدأه nobleman في 9 مايو 2009 · 7 رد · 780 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكــم ورحمـة الله وبركاتــه ،،

اعضاء المنتدى

عندي سؤال وياريت حدا يجاوبني

استدعيت بمشروعي صورة عن طريق المكون Image

واريد اضافة نص على هذه الصورة

واقوم بحفظها بصيغة JPG

ممكن حدا يساعدني بهالموضوع؟؟

مع فائق تحياتي واحترامي :wub:

#2

اظن انك تتكلم على Watermark .

المهم هذا يكون باستعمال ال Canvas .

انظر الكود - على السريع -

begin
   with image1.Canvas do
   begin
	 Brush.Style:=bsClear;
	 TextOut(10, 10, 'Hello');// النص
   end;
 image1.Picture.SaveToFile('myNew_watermarked_image.bmp');
 end;

عزيزي :

لاتنسى ان تصلي على حبيبنا و شفيعنا يوم لا ينفع مال ولا بنون .

فاللهمّ صّل وسّلم على سيدي و شفيعي وحبيبي محمد عليك الف صلاة وازكى تسليم

*****

2_header.png

#3

اخي الكريم

لا انا اقصد شيئ معين

عندي نموذج جاهز على هيئة JPG

اريد استدعائة عن طريق الدلفي

واضافة النص في مكان معين .. بنوع خط معين " لنفرض Arial "

وعند الانتهاء اقوم بحفظ الصورة بعد التعديل على هيئة JPG

فقط ببساطة

مع فائق التحيات

#4

المبداء واحد إستعمل ال Canvas و ال TextOut

عزيزي :

لاتنسى ان تصلي على حبيبنا و شفيعنا يوم لا ينفع مال ولا بنون .

فاللهمّ صّل وسّلم على سيدي و شفيعي وحبيبي محمد عليك الف صلاة وازكى تسليم

*****

2_header.png

#5

انتظر قليلا

عزيزي :

لاتنسى ان تصلي على حبيبنا و شفيعنا يوم لا ينفع مال ولا بنون .

فاللهمّ صّل وسّلم على سيدي و شفيعي وحبيبي محمد عليك الف صلاة وازكى تسليم

*****

2_header.png

#6

مثلما قال الأخ محمد

   
  with Image1.Picture.Bitmap.Canvas do
  begin
	Font.Color  := clwhite;
	Brush.Style := bsclear;
	Font.Size   := 13;
	TextOut(10, 10, 'Transparent!!');
  end;
#7

تفضل :

procedure WaterIt(Image: TImage;Const WaterMark ,SourceName, DestName: String);
Var
// Don't forget to add the jpeg unit to the Uses Block 
ImgJPEG:TJPEGImage;
begin ImgJPEG:= TJPEGImage.Create;
Try
ImgJPEG.LoadFromFile(SourceName);
{* Let's assign the ImgJPEG into the Image as a Bitmap format *}
Image.Picture.Bitmap.Assign(ImgJPEG);
Finally
{* Free the ImgJPEG , we don't need it any more *}
ImgJPEG.Free;
{* Now let's play with the Image Value *}
with Image.Canvas do
   begin Brush.Style:=bsClear;
     Font.Name:='Arial';
     Font.Color:=CLWhite;
     Font.Size:=30;
     TextOut(10, 10, WaterMark);// Write you Text
// We can Use the DrawText(...)
   end;
{* Save the Image Value to the Destination Place *}
{*** Note :
Here we can save it as jpg
but the better way is to do some more stuff so the result will
be good
Like Converting from Bmp into a Jpg Format ....
***}
image.Picture.SaveToFile(DestName);
end;
end;

الإستعمال

procedure TForm1.Button1Click(Sender: TObject);
begin {** Image1 is a TImage Object ***}
WaterIt(Image1,'Hello World','my_Source.jpg','my_Watermarked_image.jpg');
end;

ضع مكون TImage على الفورم وطبق المثال .

واترك لك المهمات الاخرى كمكان النص ....الخ .

حاول مراجعة ال Canvas , Rect ....

والله المستعان

تم تعديل هذه المشاركة بواسطة mohfa في 10 مايو 2009 في 00:56

عزيزي :

لاتنسى ان تصلي على حبيبنا و شفيعنا يوم لا ينفع مال ولا بنون .

فاللهمّ صّل وسّلم على سيدي و شفيعي وحبيبي محمد عليك الف صلاة وازكى تسليم

*****

2_header.png

#8

يعطيك الف الف عافية وصل الحل

شكرا اخي

مواضيع مشابهة