PDA

View Full Version : آموزش: آموزش ساخت واترمارک یا میکس تصاویر در هم



mr.wolf
سه شنبه 24 اسفند 1389, 14:57 عصر
با سلام
من میخوام واترمارک روی تصاویرم بزارم. به این ترتیب که :
یک تصویر بزرگ دارم بعلاوه یک تصویر کوچک
تصویر کوچک = فرمت PNG یا GIF که یک عبارت خاص روش نوشته شده و Background هم نداره.

میخوام تصور کوچک رو توی یک موقعیت خاص از تصویر بزرگ قرار بدم و بعد با یک نام جدید ذخیرش کنم.

دوستان لطفا راهنمایی کنین
:چشمک:

مصطفی ساتکی
شنبه 08 مرداد 1390, 10:29 صبح
این سوال رو باید در تالار هوش مصنوعی مطرح می کردید.
موفق باشید

MMSHFE
شنبه 08 مرداد 1390, 10:49 صبح
عذر ميخوام ولي چه ربطي به هوش مصنوعي داشت؟ اين كد رو امتحان كنيد:


// Load image and stamp and the photo to apply the watermark to
$im = imagecreatefromjpeg('photo.jpg');
$st = imagecreatefrompng('stamp.png');
// Set the margins for the stamp
$marge_left = 10;
$marge_top = 10;
// Calculate width and height of stamp
$sx = imagesx($st);
$sy = imagesy($st);
// Merge the stamp onto our photo with an opacity (transparency) of 50%
imagecopymerge($im, $st, $marge_left, $marge_top, 0, 0, $sx, $sy, 50);
// Save the image to file and free memory
imagejpeg($im, 'photo_stamp.jpg', 100);
imagedestroy($im);

توضيحات رو توي خود كد گذاشتم. اميدوارم به دردتون بخوره. كد فوق، با شفافيت 50% عكس رو واترمارك ميكنه. اگه ميخواين تغييرش بدين، از پارامتر آخر تابع imagecopymerge استفاده كنيد.
موفق باشيد.

رضا قربانی
پنج شنبه 20 مرداد 1390, 11:31 صبح
ممنون از MMSHFE (http://barnamenevis.org/member.php?55504-MMSHFE) عزیز
آقا ما اگه بخوایی در $st تصویر با فرمت gif قرار بدیم باید چی کار کنیم ؟

یعنی تصویر با فرمت gif رو روی تصویر با فرمت jpg قرار بدیم .

من الآن بک گراند نوشته رو خالی می کنم ولی وقتی روی تصویر قرار می گیره بک گراندش مشکی می شه !


با تشکر

MMSHFE
پنج شنبه 20 مرداد 1390, 16:26 عصر
ممنون از MMSHFE (http://barnamenevis.org/member.php?55504-MMSHFE) عزیز
آقا ما اگه بخوایی در $st تصویر با فرمت gif قرار بدیم باید چی کار کنیم ؟

یعنی تصویر با فرمت gif رو روی تصویر با فرمت jpg قرار بدیم .

من الآن بک گراند نوشته رو خالی می کنم ولی وقتی روی تصویر قرار می گیره بک گراندش مشکی می شه !


با تشکر

با سلام، كدي كه ضميمه كردم رو ببينيد. درست كار ميكنه. مشكل از فايل GIF هست كه Transparency رو بصورت استاندارد ايجاد و ذخيره نكرده. براي چنين تصاويري (غير استاندارد)، بهتره يك رنگ رو بعنوان پس زمينه اي كه ميخواين حذف بشه درنظر بگيرين (اين رنگ توي تصوير نبايد استفاده شده باشه) و تمامي نقاطي كه ميخواين حذف بشن، با اون رنگ پر كنيد. بعد از خوندن تصوير هم با كمك تابع imageallocatealpha، اون رنگ رو با شفافيت 0، كاملاً حذف كنيد. درغير اينصورت، بهتره موقع ذخيره تصوير توي Photoshop، گزينه Transparencyرو تيك بزنيد و از قسمت نوع جعبه رنگ هم Web رو انتخاب كنيد تا تصوير درست ذخيره بشه و به مشكل بر نخوريد.