မောရှေအကျိုးသက်ရောက်မှုသည်ပုံရိပ်ကို 0 ယ်ယူရန်သို့မဟုတ်ပုံ၏အသေးစိတ်အချက်အလက်များကိုဖုံးကွယ်ရန်တူညီသောအရောင်မျိုးစုံကို အသုံးပြု. ပုံကိုလုပ်ဆောင်ရန်ဖြစ်သည်။ ဤအကျိုးသက်ရောက်မှုကို privacy ကာကွယ်ခြင်း, အနုပညာဒီဇိုင်းနှင့်အထူးအမြင်အာရုံဆိုင်ရာသက်ရောက်မှုများတွင်ကျယ်ကျယ်ပြန့်ပြန့်အသုံးပြုသည်။ PHP တွင်လှပသော mosaic ရုပ်ပုံများကိုဖန်တီးရန်အရောင်ပိတ်ဆို့ခြင်းနှင့်အရောင်ကိုက်ညီမှုကိုအလွယ်တကူပြုလုပ်နိုင်ရန်အသုံးပြုနိုင်သည့် isionecolorresolve () function ကိုအသုံးပြုနိုင်သည်။
PHP တွင် ImagecoSorresolve () သည် GD စာကြည့်တိုက်တွင်အရောင်အသွေးစုံလင်သောသို့မဟုတ်ခွဲခြမ်းစိတ်ဖြာသော GD စာကြည့်တိုက်ရှိ function တစ်ခုဖြစ်သည်။ ၎င်း၏အဓိကလုပ်ဆောင်ချက်မှာလက်ရှိအရောင်တန်ဖိုးကို အခြေခံ. လက်ရှိအရောင်များကိုရှာဖွေပြီးသက်ဆိုင်ရာအရောင်အညွှန်းကိန်းတန်ဖိုးကိုပြန်ပို့ရန်ဖြစ်သည်။ အရောင်ကိုသတ်မှတ်မထားပါက isaecolorresolve () အရောင်ကိုဖန်တီးရန်ကြိုးစားသည်။
int imagecolorresolve ( resource $image , int $red , int $green , int $blue )
$ Image : Image image အရင်းအမြစ်
$ အနီရောင် - အနီရောင်ချန်နယ်၏တန်ဖိုး (0 မှ 255)
$ အစိမ်းရောင် - အစိမ်းရောင်ချန်နယ်၏တန်ဖိုး (0 မှ 255)
$ အပြာ - အပြာရောင်ချန်နယ်၏တန်ဖိုး (0 မှ 255)
ဤလုပ်ဆောင်ချက်သည်အလွန်အသုံးဝင်သည်။ ကျွန်ုပ်တို့သည် Mosaic အကျိုးသက်ရောက်မှုများကိုလုပ်ဆောင်ရန်လိုအပ်သည့်အခါအရောင်နှင့်ကိုက်ညီခြင်းသို့မဟုတ်အလားတူအရောင်အမြောက်အများကိုကိုင်တွယ်ရန်လိုအပ်သည့်အခါဤ function ကိုအသုံးပြုမှုသိသိသာသာတိုးတက်စေရန်အတွက်ဤလုပ်ဆောင်မှုကိုသုံးပါ။
ရုပ်ပုံကိုကြွေပြားအမျိုးမျိုးဖြင့်ပုံဖော်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်မော်ဒယ်လ်ကိုအရောင်တစ်မျိုးတည်းဖြင့်ဖန်တီးနိုင်သည်။ နောက်တဖန် isagecolorresolve () ဒီသေးငယ်တဲ့အရောင်များကိုထုတ်လုပ်ရန်အသုံးပြုသည်, ပုံ၏အရောင်ပိတ်ဆို့ခြင်းသည်ပိုမိုကောင်းမွန်အောင်ပြုလုပ်ပေးသည်။
ပထမ ဦး စွာကျွန်ုပ်တို့သည်ပုံကိုဖွင့်ပြီးပုံသလိုအရင်းအမြစ်ကိုဖန်တီးရန်လိုအပ်သည်။ ငါတို့ JPEG ပုံရိပ်ကိုသုံးနေတယ်ဆိုပါစို့။
<?php
$imagePath = 'path_to_your_image.jpg';
$image = imagecreatefromjpeg($imagePath);
if (!$image) {
die("ပုံရိပ်ကို တင်. မရပါ!");
}
?>
ထို့နောက်ကျွန်ုပ်တို့သည်ပုံကိုအပိုင်းအစငယ်များကိုအပိုင်းပိုင်းခွဲရန် function တစ်ခုကိုသတ်မှတ်သည်။ ဤနေရာတွင်ကျွန်ုပ်တို့သည်ပုံရိပ်ကို 10x10 အပိုင်းပိုင်းခွဲရန်ရိုးရိုး algorithm ကို အသုံးပြု. အမှန်တကယ် applications များရှိလိုအပ်ချက်များအရချိန်ညှိနိုင်သည်။
<?php
$blockSize = 10; // တစ်ခုချင်းစီကို mosaic ပိတ်ပင်တားဆီးမှု၏အရွယ်အစား
$imageWidth = imagesx($image);
$imageHeight = imagesy($image);
for ($y = 0; $y < $imageHeight; $y += $blockSize) {
for ($x = 0; $x < $imageWidth; $x += $blockSize) {
// လက်ရှိပိတ်ပင်တားဆီးမှု၏အရောင်ကိုရယူပါ
$rgb = imagecolorat($image, $x, $y);
$red = ($rgb >> 16) & 0xFF;
$green = ($rgb >> 8) & 0xFF;
$blue = $rgb & 0xFF;
// အသုံးပြု imagecolorresolve() အရောင် optimize
$colorIndex = imagecolorresolve($image, $red, $green, $blue);
// optimized အရောင်များနှင့်အတူလုပ်ကွက်ဖြည့်ပါ
for ($dy = 0; $dy < $blockSize; $dy++) {
for ($dx = 0; $dx < $blockSize; $dx++) {
if ($x + $dx < $imageWidth && $y + $dy < $imageHeight) {
imagesetpixel($image, $x + $dx, $y + $dy, $colorIndex);
}
}
}
}
}
?>
အရောင်ပိတ်ဆို့ခြင်းနှင့် mosaic အကျိုးသက်ရောက်မှုကိုပြီးဆုံးပြီးနောက်ကျွန်ုပ်တို့သည်ပုံကိုဒေသအလိုက်သိမ်းဆည်းနိုင်သည်သို့မဟုတ်ပြသနိုင်သည်။
<?php
// ပုံသစ်အဖြစ်သိမ်းဆည်းပါ
imagejpeg($image, 'mosaic_image.jpg');
// သို့မဟုတ် browser ကိုတိုက်ရိုက် output ကို
header('Content-Type: image/jpeg');
imagejpeg($image);
imagedestroy($image);
?>
Mosaic အကျိုးသက်ရောက်မှုများကိုဖန်တီးသောအခါတစ်ခါတစ်ရံတွင်ကျွန်ုပ်တို့သည်အရောင်ကွဲပြားမှုသည်ကြီးမားလွန်းခြင်းမရှိစေရန်အရောင်လုပ်ကွက်များ၏အရောင်ကိုပိုမိုကောင်းမွန်အောင်ပြုလုပ်ရန်လိုအပ်သည်။ ကျွန်ုပ်တို့သည်အရောင်တန်ဖိုးကို isagecolorresolveololve () function ကိုချိန်ညှိခြင်းအားဖြင့်အရောင်ကိုက်ညီမှုကိုချောမွေ့စွာကူးယူနိုင်သည်။ သို့မဟုတ်ကြိုတင်အရောင်ရေကန်ပေါ် မူတည်. အရောင်ကိုရွေးချယ်နိုင်သည်။
အရောင်ရိုးရှင်းသော simplification - အရောင်တုံးတိုင်းအတွက်လုံးဝကွဲပြားခြားနားသောအရောင်များကိုအသုံးပြုခြင်းကိုရှောင်ကြဉ်ပါ။
အရောင် palette ကိုအသုံးပြုပြီး - အရောင်ပိတ်ပင်တားဆီးမှု၏အရောင်သည်အဓိကအရောင်နှင့်ကိုက်ညီကြောင်းသေချာစေရန်ပုံ၏အဓိကအရောင်ပေါ်မူတည်ပြီးအရောင် palette ကိုဖန်တီးပါ။
<?php
// နမူနာ:အသုံးပြု自定义的调色板
$palette = [
[255, 0, 0], // နီသော
[0, 255, 0], // စိမ်းလန်းသော
[0, 0, 255], // ပြာသော
[255, 255, 0], // ဝါသော
[0, 255, 255], // ပြာသော
[255, 0, 255] // ဂေဟာ
];
$red = 150;
$green = 100;
$blue = 200;
// အနီးဆုံး palette အရောင်ကိုရှာပါ
$bestColor = findClosestColor($red, $green, $blue, $palette);
// လုပ်ဆောင်ချက်:အနီးဆုံးအရောင်ကိုရှာပါ
function findClosestColor($r, $g, $b, $palette) {
$minDistance = PHP_INT_MAX;
$closestColor = null;
foreach ($palette as $color) {
$distance = sqrt(pow($r - $color[0], 2) + pow($g - $color[1], 2) + pow($b - $color[2], 2));
if ($distance < $minDistance) {
$minDistance = $distance;
$closestColor = $color;
}
}
return $closestColor;
}
?>
ISACECOSORRESOLVELOSOLELEL () function နှင့် php တို့၏ GD စာကြည့်တိုက်ကိုလွယ်ကူစွာဆောင်ရွက်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် Mosaic အကျိုးသက်ရောက်မှုများကိုအလွယ်တကူရရှိနိုင်ပါသည်။ Privacy Protection, အနုပညာအကျိုးသက်ရောက်မှုများ, သို့မဟုတ် image data processing, Mosaic အကျိုးသက်ရောက်မှုများသည်အလွန်အမင်းလက်တွေ့ကျသောပုံရိပ်ထုတ်ခြင်းနည်းလမ်းဖြစ်သည်။ အရောင်ရွေးချယ်ခြင်းကိုပိုမိုကောင်းမွန်အောင်ပြုလုပ်ခြင်းနှင့်စိတ်ကြိုက် palette ကိုကျင့်သုံးခြင်းအားဖြင့် Mosaic Image ၏ရုပ်ပုံများကိုအမြင်အာရုံသက်ရောက်မှုများကိုပိုမိုသဘာဝကျပြီးညှိနှိုင်းဆောင်ရွက်နိုင်သည်။