View Full Version : انداختن یک عکس بروی یک عکس دیگر...
فرزاد دلفی باز
چهارشنبه 06 تیر 1386, 12:09 عصر
با سلام :
فرض کنید یک عکس دارید و می خواهید عکس دیگه ایی(مثلا اسکن امضا ) بروی عکس اول قرار دهید طوریکه فقط قسمت امضا بروی عکس اول قرار گیرد و بقیه عکس اول مشخص باشد
بنظر شما دوستان چنین کاری رو چطور باید انجام داد
با تشکر
dkhatibi
چهارشنبه 06 تیر 1386, 12:46 عصر
شاید این کار به سادگی امکان پذیر نباشد.
فرمتهای خاصی چون gif و png می توانند ضمینه ی شفاف داشته باشند. برای این منظور فایل اضا را با این ئسوندها و خاصیت زمینه ی شفاف ذخیره کنید. بعد هم کار مطابق معمول است.
فرزاد دلفی باز
چهارشنبه 06 تیر 1386, 12:56 عصر
میشه بیشتر توصیح بدهید ....
این روش رو امتحان کردم نشد
dkhatibi
چهارشنبه 06 تیر 1386, 17:23 عصر
فایل باید زمینه ی شفاق داشته باشد. تو فتو شاپ می تونی زمینه را پاک نی وبا gif ذخیره کنی
lord_viper
چهارشنبه 06 تیر 1386, 18:31 عصر
فکر کنم این کد به دردتون بخوره واسه ترکیب 2 تصویر
b1,b2:TBitmap;
واسه Button1 کدهای زیر رو بنویسید :
if OpenDialog1.Execute then
begin
b1.Free;
b1:=TBitmap.Create;
s:=OpenDialog1.FileName;
b1.LoadFromFile(s);
end;
واسه Button1 هم کدهای زیر :
if OpenDialog1.Execute then
begin
b2.Free;
b2:=TBitmap.Create;
s:=OpenDialog1.FileName;
b2.LoadFromFile(s);
end;
واسه Button1 هم کدهای زیر رو وارد کنید :
var x,y : integer;
p1:PByteArray;p2:PByteArray;
begin
Image1.Height:=b1.Height;
image1.Width:=b1.Width;
for y:=0 to Min(b1.Height-1,b2.Height-1) do
begin
p1:=b1.ScanLine[y];
p2:=b2.ScanLine[y];
for x:=0 to Min(b1.Width-1,b2.Width-1) do
begin
Image1.Canvas.Pixels[x,y]:=
rgb(((p1[x*3]-4)+(p2[x*3]-4))div 2,
((p1[x*3]-2)+(p2[x*3]-2))div 2,
((p1[x*3]-3)+(p2[x*3]-3))div 2);
end;
end;
end;
فرزاد دلفی باز
شنبه 09 تیر 1386, 15:28 عصر
دوست عزیز مطمنی کدتون درسته ؟؟؟؟
hesamy2004
یک شنبه 10 تیر 1386, 15:11 عصر
یک راه خیلی سادش اینطوریه (البته باید فرمت هر دو فایلت BMP باشه. بعد از اتمام کار هم میتونی فرمت تصویر نهایی رو تغییر بدی):
1- فرمت دو تصویرت رو به BMP تغییر بده
2- پس زمینه تصویر امضات رو به صورت یکدست به یه رنگ دلخواه (مثلاً سفید) تغییر بده
3- مختصات تمام نقاط غیر سفید را با اسکن کردن تصویر بدست بیار (همون کاری که یه رباط برای پیدا کردن مسیرش میکنه)
4- دلخواه : میتونی با مپ کردن اندازه تصویر امضات رو کوجک یا بزرگ کنی البته من رابطه اون رو نمیدونم.
5- بعد از اینکه مشخصات یا مختصات پیکسلهای امضات رو بدست آوردی میتونی اون رو به تصویر مبنات اضافه کنی. برای اینکار اول محدودای که میخوای امضات اونجا قرار بگیره رو مشخص کن (یه مربع گوشه پایین تصویر) سپس مختصات امضات رو با اون ناحیه جمع کن.
6- در پایان میتونی فرمت تصویرت رو هم تغییر بدی تا حجمش کمتر بشه.
امیدوارم این روش بدردت بخوره
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.