လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> ပုံရိပ်တွေရဲ့ပုံရိပ်တွေရဲ့ပုံရိပ်တွေကိုပုံရိပ်တွေကိုပုံရိပ်တွေနဲ့ပုံဖော်နိုင်သလား။

ပုံရိပ်တွေရဲ့ပုံရိပ်တွေရဲ့ပုံရိပ်တွေကိုပုံရိပ်တွေကိုပုံရိပ်တွေနဲ့ပုံဖော်နိုင်သလား။

gitbox 2025-09-11
<span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// ဤဆောင်းပါးသည်ဥပမာဆောင်းပါးတစ်ပုဒ်အတွက်ကုဒ်မူဘောင်ဖြစ်သည်</span></span><span>
</span><span><span class="hljs-comment">// ဆောင်းပါးသည်ကုဒ်နှင့်လုံးဝမသက်ဆိုင်ပါ,အောက်ပါတို့သည်ခွဲခြားခြင်းမပြုမီအကြောင်းအရာသာဖြစ်သည်</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>

&lt;hr&gt;

</span><span><span class="hljs-comment"># ဘယ်လိုဖြတ်သန်းရမလဲ imagecreatetruecolor နှင့် imagealphablending ပုံရိပ်တွေရဲ့ stretCent သက်ရောက်မှုကိုအကောင်အထည်ဖော်ပါ?</span></span><span>

တည်နေ PHP Image processing စာကြည့်တိုက် GD အလယ်ပိုင်း,`</span><span><span class="hljs-title function_ invoke__">imagecreatetruecolor</span></span><span>()` နှင့် `</span><span><span class="hljs-title function_ invoke__">imagealphablending</span></span><span>()` ဒါဟာမကြာခဏအတူတကွအသုံးပြုကြသည်နှစ်ခုလုပ်ဆောင်ချက်များကိုဖြစ်ပါတယ်。它们能够帮助开发者တည်နေ生成图像时实现半透明效果,ဤသည်ပုံရိပ် superposition ပိုမိုသဘာဝကျစေသည်。本文将介绍它们的基本原理နှင့်实际应用。

</span><span><span class="hljs-comment">## 1. imagecreatetruecolor ၏အခန်းကဏ်။</span></span><span>
`</span><span><span class="hljs-title function_ invoke__">imagecreatetruecolor</span></span><span>()` စစ်မှန်သောအရောင်ပုံရိပ်အရင်းအမြစ်ကိုဖန်တီးရန်အသုံးပြုခဲ့သည်。နှင့် `</span><span><span class="hljs-title function_ invoke__">imagecreate</span></span><span>()` ကဲှကွာသော,它支持更多的颜色深度နှင့်更高的质量。အဆိုပါခေါ်ဆိုမှုနည်းလမ်းအောက်ပါအတိုင်းဖြစ်ပါတယ်:

```php
</span><span><span class="hljs-variable">$img</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecreatetruecolor</span></span><span>(</span><span><span class="hljs-number">200</span></span><span>, </span><span><span class="hljs-number">200</span></span><span>);
</span></span>

ဤသည်နောက်ဆက်တွဲပုံဆွဲစစ်ဆင်ရေးသယ်ဆောင်ရန် 200 × 200 × 200 ဆယ့် 200 ကိုထုတ်ပေးပါတယ်။

2 ။ isealphableend ၏အခန်းကဏ်။

အဆိုပါ imagealphableending () function ကိုရောနှော mode ကိုသတ်မှတ်ရန်အသုံးပြုသည်။ အကယ်. Blending Mode ကိုဖွင့်ထားပါက pixel အသစ်များသည်ပုံရိပ်သို့မဟုတ်အရောင်ကိုဆွဲယူသောအခါ pixel အသစ်များနှင့်ရောနှောထားပြီး,

ဥပမာအားဖြင့်:

 <span><span><span class="hljs-title function_ invoke__">imagealphablending</span></span><span>(</span><span><span class="hljs-variable">$img</span></span><span>, </span><span><span class="hljs-literal">true</span></span><span>);
</span></span>

မှန်ကန်စွာ သတ်မှတ်သည့်အခါအရောင် overlays များသည်တိုက်ရိုက် overwriting ထက်ပွင့်လင်းမြင်သာမှုတွင်ရောနှောနေကြသည်။

3 ။ Imagesavealpha နှင့်အတူသုံးပါ

ပွင့်လင်းမြင်သာသောအကျိုးသက်ရောက်မှုများဖြင့် PNGS ကိုထုတ်လုပ်သောအခါပွင့်လင်းမြင်သာသောရုပ်သံလိုင်းကိုမှန်ကန်စွာသိမ်းဆည်းနိုင်ရန်အတွက်လည်း Imagesavealpha () ကို သုံးရန်လိုအပ်သည်။

 <span><span><span class="hljs-title function_ invoke__">imagesavealpha</span></span><span>(</span><span><span class="hljs-variable">$img</span></span><span>, </span><span><span class="hljs-literal">true</span></span><span>);
</span></span>

ဤနည်းအားဖြင့် PNG ဖိုင်ကိုချွေတာသောအခါပွင့်လင်းမြင်သာသောအပိုင်းသည်အကျိုးသက်ရောက်လိမ့်မည်။

4 ။ တကယ့်ဥပမာ

ဤတွင်စမှန်စတုဂံကိုထုတ်လုပ်ရန်ဥပမာအပြည့်အစုံဖြစ်သည်။

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// ပတ်တူဖန်တီးပါ</span></span><span>
</span><span><span class="hljs-variable">$img</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecreatetruecolor</span></span><span>(</span><span><span class="hljs-number">200</span></span><span>, </span><span><span class="hljs-number">200</span></span><span>);

</span><span><span class="hljs-comment">// 开启混合模式နှင့်保存透明通道</span></span><span>
</span><span><span class="hljs-title function_ invoke__">imagealphablending</span></span><span>(</span><span><span class="hljs-variable">$img</span></span><span>, </span><span><span class="hljs-literal">true</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">imagesavealpha</span></span><span>(</span><span><span class="hljs-variable">$img</span></span><span>, </span><span><span class="hljs-literal">true</span></span><span>);

</span><span><span class="hljs-comment">// ပွင့်လင်းနောက်ခံ assign</span></span><span>
</span><span><span class="hljs-variable">$transparent</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecolorallocatealpha</span></span><span>(</span><span><span class="hljs-variable">$img</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">127</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">imagefilledrectangle</span></span><span>(</span><span><span class="hljs-variable">$img</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">200</span></span><span>, </span><span><span class="hljs-number">200</span></span><span>, </span><span><span class="hljs-variable">$transparent</span></span><span>);

</span><span><span class="hljs-comment">// Translucet အနီရောင်ဖြန့်ဝေ</span></span><span>
</span><span><span class="hljs-variable">$red</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecolorallocatealpha</span></span><span>(</span><span><span class="hljs-variable">$img</span></span><span>, </span><span><span class="hljs-number">255</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">75</span></span><span>);

</span><span><span class="hljs-comment">// စတုဂံဆွဲပါ</span></span><span>
</span><span><span class="hljs-title function_ invoke__">imagefilledrectangle</span></span><span>(</span><span><span class="hljs-variable">$img</span></span><span>, </span><span><span class="hljs-number">50</span></span><span>, </span><span><span class="hljs-number">50</span></span><span>, </span><span><span class="hljs-number">150</span></span><span>, </span><span><span class="hljs-number">150</span></span><span>, </span><span><span class="hljs-variable">$red</span></span><span>);

</span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း PNG</span></span><span>
</span><span><span class="hljs-title function_ invoke__">header</span></span><span>(</span><span><span class="hljs-string">'Content-Type: image/png'</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">imagepng</span></span><span>(</span><span><span class="hljs-variable">$img</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">imagedestroy</span></span><span>(</span><span><span class="hljs-variable">$img</span></span><span>);
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

အထက်ပါကုဒ်ကိုဖွင့်ပြီးနောက် Browser သည် PNG ပုံရိပ်ကိုပွင့်လင်းမြင်သာသောနောက်ခံနှင့်စင်တာရှိအနီရောင်စတုဂံနှင့်အတူ PNG ပုံရိပ်ကိုပြလိမ့်မည်။

5 ။ အကျဉ်းချုပ်

စိတ်ကူးယဉ်ဆန်ဆန် () နှင့် ImagesaveAvealpha () နှင့်ပေါင်းစပ်ထားသော isagecreatetuecolor () နှင့်ပေါင်းစပ်ထားသည့်အရည်အသွေးမြင့်ပန်းချီ () ကိုဖန်တီးပါ။ ဤနည်းစနစ်သည်ရေစာများ, အထူးသက်ရောက်မှုများပုံများသို့မဟုတ် UI ဒြပ်စင်များကိုထုတ်လုပ်သည့်အခါအထူးသဖြင့်အသုံးဝင်သည်။ ဤလုပ်ဆောင်ချက်နှစ်ခုပေါင်းစပ်မှုကိုကျွမ်းကျင်စေရန် PHP ၏ပုံရိပ်ကိုပိုမိုပြောင်းလွယ်ပြင်လွယ်။ အစွမ်းထက်စေနိုင်သည်။