PHP မှဇာတ်ကောင်ကာတွန်းသက်ရောက်မှုများပြုလုပ်ခြင်းသည် JavaScript (သို့ ) CSS ကို အသုံးပြု. အလိုအလျောက်မတူသော်လည်း, ဤဆောင်းပါးသည် Loop ကို character sequence ကိုဖန်တီးရန် Loop sequence ကိုထုတ်လုပ်ရန် Loop ကိုပေါင်းစပ်ရန် Loop ကိုပေါင်းစပ်ရန်မည်သို့အသုံးပြုရမည်ကိုရှင်းပြပါလိမ့်မည်။
ImageFontwidth () သည် PHPG GD စာကြည့်တိုက်တွင်သတ်မှတ်ထားသော font width ရရှိရန်အသုံးပြုသော PHPG GD စာကြည့်တိုက်တွင်လုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ ၎င်း၏ရည်ရွယ်ချက်မှာ font midth ကို () နှင့် icagestringup () လုပ်ဆောင်ချက်များကိုအသုံးပြုသော pixel များကို pixel များကိုပြန်ပို့ရန်ဖြစ်သည်။ ဒီ function ဟာ Image ပေါ်ရှိဇာတ်ကောင်အတိအကျကိုထိန်းချုပ်ရန်အထူးသဖြင့်သင့်တော်သည်။
$font = 5;
$charWidth = imagefontwidth($font);
ဤဥပမာတွင်ကျွန်ုပ်တို့သည်စာလုံးတစ်လုံးစီ၏အကျယ်ကိုရရှိရန် Font ကို 5 ခုနှင့်အသုံးပြုသည် ။
ရိုးရှင်းတဲ့ကာတွန်းအကျိုးသက်ရောက်မှုကိုတည်ဆောက်ကြပါစို့။ ဘောင်တစ်ခုစီသည်ပုံတစ်ပုံတစ်ခုဖြစ်ပြီးဇာတ်ကောင်များ၏အနေအထားကို frame number မှဆုံးဖြတ်သည်။ imagefontwidth () ပုံတစ်ပုံတွင်အလျားလိုက်အဆင်သင့်များကိုတိကျစွာတွက်ချက်ရန် imagefontwidth () ကို သုံးပါ။
<?php
$font = 5;
$char = '*';
$frameCount = 20;
$imageWidth = 200;
$imageHeight = 40;
$charWidth = imagefontwidth($font);
// dynamically မျိုးစုံဘောင်များထုတ်ပေး
for ($frame = 0; $frame < $frameCount; $frame++) {
$im = imagecreate($imageWidth, $imageHeight);
$bgColor = imagecolorallocate($im, 255, 255, 255);
$textColor = imagecolorallocate($im, 0, 0, 0);
// ဇာတ်ကောင်တွက်ချက် x ညီညာစေ
$x = ($charWidth * $frame) % $imageWidth;
$y = ($imageHeight - imagefontheight($font)) / 2;
imagestring($im, $font, $x, $y, $char, $textColor);
// အဖြစ်ဘောင်ကိုသိမ်းပါ PNG စာချုပ်စာတမ်း
$filename = "frame_$frame.png";
imagepng($im, $filename);
imagedestroy($im);
}
?>
အထက်ဖော်ပြပါကုဒ်သည် script ည့်သည် run ပြီးနောက် PNG ရုပ်ပုံများကိုထုတ်လုပ်လိမ့်မည်။ ပုံတစ်ပုံစီရှိ အက္ခရာများ သည်အရင်တစ်ခုထက်မှန်ကန်သောအပိုအကျယ်သို့ပြောင်းရွှေ့သည်။
PHP ကိုယ်တိုင်က GIF Animations ကိုတိုက်ရိုက်ထုတ်လုပ်နိုင်သော်လည်း ISEMAGICT ကဲ့သို့သောပြင်ပကိရိယာများကို GIF Animets သို့ synolsize လုပ်ရန် Emposemagick ကိုယ်တိုင်ပြုလုပ်နိုင်သည်။
convert -delay 10 -loop 0 frame_*.png animation.gif
သို့မဟုတ် https://m66.net/tool/gifmaker သို့လာရောက်လည်ပတ်ခြင်းကဲ့သို့သောအွန်လိုင်းကိရိယာများကို အသုံးပြု. Animeations များကို syntheize လုပ်ရန်။
ဇာတ်ကောင်လှုပ်ရှားမှုများကိုနောက်ပြန်လှည့်ပတ်ကြည့်ရှုရန်, သင်သည် "Round Trip" sequence သို့ ဒေါ်လာ frame ကိုမြေပုံဆွဲနိုင်သည်။ ဥပမာ -
$step = $frame % ($frameCount * 2);
$offset = $step < $frameCount ? $step : (2 * $frameCount - $step - 1);
$x = ($charWidth * $offset) % $imageWidth;
ဤနည်းအားဖြင့်ဇာတ်ကောင်များသည်ပုံတွင်နောက်ကျောနှင့်ထွက်လာလိမ့်မည်။