PHP တွင်အသုံးပြုသော GD စာကြည့်တိုက်သည်ပုံမှန်အားဖြင့်ပုံရိပ်များကိုပိုမိုကောင်းမွန်စေသည်။ ဤဆောင်းပါးသည်စာသားမြေပုံဆိုးများအောင်မြင်ရန် ImageFontwidth () နှင့် agrecopy () function များကိုပေါင်းစပ်အသုံးပြုရမည်ကိုအဓိကထားသည်။ စာသားမြေပုံကိုစာသားကိုသေးငယ်သောအပိုင်းအစများသို့မဟုတ်မြေပုံများသို့ "ဖြတ်" ရန်ဖြစ်သည်။ ထို့နောက်ပိုမိုပြောင်းလွယ်ပြင်လွယ်သောစာသားအသုံးအနှုန်းပုံစံကိုရရှိရန် Target Poice ပေါ်သို့ splice လုပ်ရန်ဖြစ်သည်။
ImageFontwidth (INT $ font): Int
Built-in font character width ကိုပြန်ပို့ပါ။ $ font သည် 1-5 ဖြင့်အက်ခရာအရွယ်အစားခွဲခြားသတ်မှတ်ခြင်းဖြစ်သည်။ ဤလုပ်ဆောင်ချက်သည်စာသား၏အကျယ်ကိုဆုံးဖြတ်ရန်နှင့် splicing အနေအထားတွက်ချက်မှုကိုလွယ်ကူချောမွေ့စေရန်အတွက်အသုံးဝင်သည်။
imagecopy (အရင်းအမြစ် $ dst_im, အရင်းအမြစ် $ src_im, int $ src_y, int $ src_y, int $ src_y, int $ src_y, int $ src_y, int $ src_y, int $ src_y, int $ src_y, int $ src_y, int $ src_y, int $ src_y, int $ src_y, int $ src_y, int $ src_y, int $ src_y, int $ Src_y
အရင်းအမြစ်ပုံရိပ်ရှိ image ရိယာတစ်ခုစီကိုသတ်မှတ်ထားသောပုံရိပ်၏တည်နေရာသို့ကူးယူပါ။ တစ် ဦး ချင်းစီဇာတ်ကောင်တစ် ဦး ချင်းစီကိုကူးယူသို့မဟုတ်ကူးယူရန်သို့မဟုတ်စာသားအစိတ်အပိုင်းများကိုဖြတ်ဖို့အသုံးပြုနိုင်ပါတယ်။
လိုအပ်သောစာသားပါ 0 င်သည့်အရင်းအမြစ်ပုံရိပ်ကိုပြင်ဆင်ပါ (များသောအားဖြင့်စာသားကိုသေးငယ်သည့်ရုပ်ပုံတွင်ရေးထားသည်) ။
စာလုံးများနှင့်ဇာတ်ကောင်အရေအတွက်အရဇာတ်ကောင် by-character characters များကိုအရင်းအမြစ်ပုံရိပ်မှယူသည်။
အက္ခရာစဉ်များကို copy လုပ်ထုံးလုပ်နည်း () function ကို ဖြတ်. through function ကို ဖြတ်. ပစ်မှတ်ပုံရိပ်၏သတ်မှတ်ထားသောအနေအထားသို့ကူးယူပါ။
ဆိုနိုင်ပါတယ်စာသားမြေပုံအကျိုးသက်ရောက်မှုအောင်မြင်ရန်အနေအထားသတ်မှတ်ချက်များကိုချိန်ညှိပါ။
<?php
// ပစ်မှတ်ပုံရိပ်တစ်ခုဖန်တီးပါ(အဖြူရောင်နောက်ခံ)
$dst_width = 300;
$dst_height = 50;
$dst_im = imagecreatetruecolor($dst_width, $dst_height);
$white = imagecolorallocate($dst_im, 255, 255, 255);
imagefill($dst_im, 0, 0, $white);
// အရင်းအမြစ်မြေပုံ,ဒါဟာစာသားကိုယူဆ"HELLO"တင်ဆက်မှုများ,အကျယ်နှင့်အမြင့်သည်ဇာတ်ကောင်တစ်ခုစီ၏အကျယ်ဖြစ်သည်*ဇာတ်ကောင်နံပါတ်နှင့်ဇာတ်ကောင်အမြင့်
// ၎င်းကိုအသုံးပြုသောအခါစာသားအပြည့်ပါ 0 င်သည့်ရုပ်ပုံအရင်းအမြစ်ကိုသင်ပြင်ဆင်ရန်လိုအပ်သည်။
$src_im = imagecreatefrompng('http://m66.net/images/letters.png');
// စာလုံးအရွယ်အစားကိုသတ်မှတ်ပါ(built-in ဖောင့်များ,1-5)
$font = 5;
$char_width = imagefontwidth($font);
$char_height = imagefontheight($font);
// ပို့စ်တင်ရန်စာသား
$text = "HELLO";
$len = strlen($text);
// စာသားရဲ့ starting အနေအထားကိုတွက်ချက်,စာသားကိုစင်တာ
$start_x = ($dst_width - $char_width * $len) / 2;
$start_y = ($dst_height - $char_height) / 2;
// အက်ခရာ - by-character copy
for ($i = 0; $i < $len; $i++) {
$char = $text[$i];
// ASCIIစိတ်တေစေ,假设အရင်းအမြစ်မြေပုံ文字排列是从'A'စဉ်ဆက်မပြတ်စီစဉ်ရန်စတင်ပါ
$offset = ord($char) - ord('A');
$src_x = $offset * $char_width;
$src_y = 0;
// ပစ်မှတ်ဂရပ်မှဇာတ်ကောင်တစ်ခုတည်းကိုကူးယူပါ
imagecopy(
$dst_im,
$src_im,
$start_x + $i * $char_width,
$start_y,
$src_x,
$src_y,
$char_width,
$char_height
);
}
// output ကိုပုံ
header('Content-Type: image/png');
imagepng($dst_im);
// အရင်းအမြစ်များကိုအခမဲ့
imagedestroy($dst_im);
imagedestroy($src_im);
?>
ဤဥပမာသည်စာသားရုပ်ပစ္စည်းပုံ ( itters.png ) သည်စာလုံးအရေအတွက်နှင့်စာလုံးအမြင့်ဖြင့်မြှောက်ထားသည့်စာလုံးအမြင့်နှင့်အမြင့်များအမြင့်နှင့်ပြည့်နှက်နေသောအက္ခရာများနှင့်အတူအလျားလိုက်စာဖြင့်စီစဉ်ထားသည့်စာများနှင့်အတူစာဖြင့်ရေးသားထားသောပုံတစ်ပုံဖြစ်သည်ဟုယူဆသည်။
imagefontwidth () နှင့် imagefonfonteight () အက်ခရာများ၏အကျယ်နှင့်အမြင့်ကိုတိကျစွာရရှိရန်အတွက်စာလုံးပေါင်းကိုပိုမိုလွယ်ကူစွာကူးယူရန်ကူညီသည်။
အကယ်. စာသားအကြောင်းအရာသည်ရှုပ်ထွေးသောအခါ, accordttext () ကို မပြုပြင်မီ font ကိုသုံးရန်သို့မဟုတ် agecopyrentsampled () ကိုသုံးနိုင်သည်။
ဤနည်းလမ်းဖြင့်သင်စိတ်ဝင်စားဖွယ်ကောင်းသောစာသားကာတွန်းသက်ရောက်မှုများ, အက်ခရာအပိုင်းအစမြေပုံများနှင့်စိတ်ကြိုက်ခင်းစိတ်ပင်ပင်ပင်ဖန်တီးနိုင်သည်။