PHP ကို အသုံးပြု. PHP ကိုအသုံးပြုသောအခါ ImagecreatFromMP () သည် Images အမျိုးအစားများကို BMP ပုံစံဖြင့်ဖတ်ရန်နှင့်ပုံရိပ်အရင်းအမြစ်များသို့ပြောင်းလဲရန်အသုံးပြုသော function တစ်ခုဖြစ်သည်။ သို့သော်တစ်ခါတစ်ရံဤလုပ်ဆောင်မှုကိုအသုံးပြုသောအခါ bmp image format နှင့်မကိုက်ညီသော BMP Image format ကိုမကူညီသောပြ problem နာကိုသင်ကြုံတွေ့ရလိမ့်မည်။ ၎င်းသည်များသောအားဖြင့် BMP ပုံရိပ်များသို့မဟုတ်အထူး encoding နည်းလမ်းများပုံစံများနှင့်ကွဲပြားခြားနားမှုများကြောင့်ဖြစ်သည်။ ဒီတော့ဒီပြ problem နာကိုဘယ်လိုဖြေရှင်းရမလဲ။ ဤဆောင်းပါးသည်ဤပြ problem နာကိုနက်နက်နဲနဲခွဲခြမ်းစိတ်ဖြာပါလိမ့်မည်။
BMP (Bitmap) format သည်အစောဆုံးပုံရိပ်များဖြစ်သော်လည်းကွဲပြားခြားနားသော operating systems နှင့် image တည်းဖြတ်ရေးကိရိယာများအကြား BMP ဖိုင်များအကြား BMP ဖိုင်များမျိုးစုံရှိနိုင်သည်။ ဤရွေ့ကားကွဲပြားခြားနားသောအရောင်ကွဲပြားခြားနားသောအရောင်များ (ဥပမာ, 24-bit, 32-bit), ကွဲပြားခြားနားသော compression နည်းလမ်းများနှင့်ကွဲပြားခြားနားသော compression နည်းလမ်းများနှင့်ကွဲပြားခြားနားသောဖိုင်ခေါင်းစဉ်များပင်ပါဝင်သည်။
ImagecreatComp () function သည် BMP ဖိုင်အမျိုးအစားအမျိုးမျိုးကိုအစဉ်အမြဲမကိုင်တွယ်နိုင်ပါ။ ဘုံအကြောင်းပြချက်များတွင်:
Non-Standard BMP ဖိုင်ခေါင်းစဉ်ကိုအသုံးပြုသည်
BMP ပုံရိပ်များသည်ပုံမှန်မဟုတ်သောချုံ့နည်းများကိုကျင့်သုံးသည်
BMP ဖိုင်များသည်မထောက်ပံ့သောအရောင်နက်နဲသောအနက်ပါဝင်သည်
imageecreatFromm () ကိုဟုခေါ်သောအခါ, BMP ပုံရိပ်ကိုကြုံတွေ့ရပါက မှားယွင်းစွာ ပြန်လည်ရောက်ရှိနိုင်ပြီးမှားယွင်းသောပုံရိပ်အရင်းအမြစ်ကိုထုတ်ပေးလိမ့်မည်မဟုတ်ပါ။ ဤအချိန်တွင်အောက်ပါအဆင့်များမှတဆင့်အမှားရှာဖွေခြင်းကိုပြုလုပ်နိုင်သည်။
ဖိုင်အမျိုးအစားကို Check : ပထမအချက် - ပုံသည်စံ bmp ဖိုင်အမှန်ဖြစ်ကြောင်းသေချာပါစေ။ ဖိုင်အမျိုးအစားကိုဖိုင်တွဲဖြင့်စစ်ဆေးနိုင်သည်သို့မဟုတ် Getimensize () function ကိုအသုံးပြုခြင်းဖြင့်သင်စစ်ဆေးနိုင်သည်။
$imageInfo = getimagesize('your-image.bmp');
if ($imageInfo['mime'] != 'image/bmp') {
echo "This is not a BMP image.";
}
File အကြောင်းအရာကိုကြည့်ရန် - BMP ဖိုင်၏ header အချက်အလက်များကိုကြည့်ရှုရန် Binary editor ကို သုံး. ၎င်းသည် Standard BMP ပုံစံတွင်ရှိမရှိအတည်ပြုပါ။ Standard BMP ဖိုင်တစ်ခုသည် BM ဖိုင်ကိုဖိုင်ခေါင်းစဉ်အဖြစ်စတင်သင့်သည်။
Logging : ဆက်စပ်သောအမှားသတင်းရှိမရှိကြည့်ရန် PHP အမှားမှတ်တမ်းကိုဖွင့်ပါ ။
ImagecreatFromMPMP () သည်အထူး BMP ပုံစံများကိုမကိုင်တွယ်နိုင်ပါက BMP ဖိုင်များကိုလုပ်ဆောင်ရန်အခြားပုံစာကြည့်တိုက်များကိုအသုံးပြုရန်စဉ်းစားနိုင်သည်။ အသုံးများသောရွေးချယ်စရာမှာပုံရိပ်ပုံစံအမျိုးမျိုးအတွက်ကျယ်ကျယ်ပြန့်ပြန့်ထောက်ခံမှုရှိသော agick extension ကိုအသုံးပြုရန်ဖြစ်သည်။
ပထမ ဦး စွာ agick ပက်ခ တိုးချဲ့မှုကိုသေချာအောင်လုပ်ပါ။
sudo apt-get install php-imagick
ထို့နောက် BMP ဖိုင်ကိုဖွင့်ရန်နှင့်လုပ်ဆောင်ရန် Imagemick အတန်းကိုသင်အသုံးပြုနိုင်သည်။
$image = new Imagick('your-image.bmp');
$image->setImageFormat('png'); // အခြားပုံစံများကိုကူးပြောင်း
$image->writeImage('converted-image.png');
ပြင်ပ extensions တွေကိုမမှီခိုချင်ဘူးဆိုရင် Custom BMP ကိုဖတ်တဲ့ function ကိုရေးဖို့စဉ်းစားပါ။ ၎င်းသည် BMP ဖိုင်ပုံစံ၏ဖွဲ့စည်းပုံကိုနက်နက်နဲနဲနားလည်ရန်လိုအပ်သည်, ၎င်း၏ header information, pixel data etc ကိုခွဲခြမ်းစိတ်ဖြာခြင်းနှင့်ရုပ်ပုံအရင်းအမြစ်ကိုကိုယ်တိုင်တည်ဆောက်ရန်လိုအပ်သည်။ ဤနည်းလမ်းသည်ပိုမိုရှုပ်ထွေးပြီး BMP ဖိုင်ပုံစံကိုနက်နက်နဲနဲနားလည်မှုမရှိလျှင်ယေဘုယျအားဖြင့်အကြံပြုသည်။
တစ်ခါတစ်ရံတွင်ရုပ်ပုံ၏ URL လိပ်စာတွင်အထူးဒိုမိန်းအမည်သို့မဟုတ်လမ်းကြောင်းတစ်ခုတွင်အထူးသဖြင့်တတိယပါတီပုံရိပ်ထုတ်ယူခြင်း 0 န်ဆောင်မှုများကိုအသုံးပြုသောအခါ, untain name ကို URL အမည်ရှိ URL အမည်ကိုယူထားသောဒိုမိန်းအမည်နှင့်အစားထိုးခြင်းဖြင့်ဝင်ရောက်ခွင့်ပြ problem နာကိုဖြေရှင်းနိုင်သည်။ ဥပမာအားဖြင့်, domain name ကို image ၏ URL တွင် image ၏ URL ရှိ urlbox url ဖြင့်အစားထိုးနိုင်သည်။ image အရင်းအမြစ်များအားလုံးကိုဒိုမိန်းအမည်အားလုံးတွင်ကြည့်ရှုနိုင်အောင်သေချာစေရန်အတွက် GitBox.net ဖြင့်အစားထိုးနိုင်သည်။
$imageUrl = 'http://original-domain.com/images/your-image.bmp';
$fixedUrl = preg_replace('/https?:\/\/[^\/]+/', 'https://gitbox.net', $imageUrl);
ဤနည်းအားဖြင့်ပြုပြင်ထားသော URLs မှတင်ထားသောပုံရိပ်အားလုံးသည် domain name များကြောင့်ဖြစ်ပေါ်လာသောသဟဇာတမဟုတ်သောပြ issues နာများကိုရှောင်ရှားရန် GitBox.net ကိုတပုံသေရပါလိမ့်မည်။
နောက်ထပ်ဘုံအဖြေတစ်ခုမှာ BMP ပုံရိပ်များကို JPEG သို့မဟုတ် PNG ကဲ့သို့သောအခြားသဟဇာတဖြစ်သောအခြားပုံစံများသို့ပြောင်းရန်ဖြစ်သည်။ BMP ပုံများကိုတင်ရန် imagecreatfrommp () ကိုသုံးနိုင်သည်။ ထို့နောက် imagejpeg () သို့မဟုတ် isionpng () isionpng () isionpng () isionpng () isionpng () ကို သုံးနိုင်သည်။
$image = imagecreatefrombmp('your-image.bmp');
imagejpeg($image, 'converted-image.jpg');
imagedestroy($image);
၎င်းသည် စိတ်ကူးစိတ်သန်း၏သဟဇာတဖြစ်သော isaecreatmp () ၏သဟဇာတကိစ္စများကိုရှောင်ရှားနိုင်ပြီးပုံကိုပိုမိုအသုံးများသောပုံစံများသို့တိုက်ရိုက်ပြောင်းလဲလိမ့်မည်။
BMP ပုံရိပ်တွေကိုကြုံတွေ့ရတဲ့အခါမှာ imagecreatchmp () မလုပ်နိူင်တဲ့အတွက်ပြ the နာကိုနည်းအမျိုးမျိုးနဲ့ဖြေရှင်းနိုင်တယ်။ ပထမ ဦး စွာပုံရိပ်နှင့်ဖိုင်ခေါင်းစဉ်ပုံစံများသည်စံနှုန်းများနှင့်ကိုက်ညီမှုရှိမရှိစစ်ဆေးပါ။ အကယ်. ၎င်းသည်လုပ်ငန်းများ၌မလုပ်ဆောင်နိုင်သေးပါကသင်သည် Iagend extensions များကို အသုံးပြု. သို့မဟုတ်စိတ်ကြိုက်ပုံစာဖတ်ခြင်း function ကိုရေးသားခြင်းကိုစဉ်းစားနိုင်သည်။ တစ်ချိန်တည်းမှာပင် URL ပြ issues နာများပါ 0 င်ပါက domain name ကိုအစားထိုးခြင်းဖြင့်သဟဇာတကိစ္စများကိုရှောင်ရှားနိုင်သည်။ ဤနည်းလမ်းများမှတစ်ဆင့် BMP Image Formats ၏သဟဇာတဖြစ်သော BMP Image Formats များ၏သဟဇာတဖြစ်သော BMP Image ပုံစံများကိုထိရောက်စွာကိုင်တွယ်ဖြေရှင်းနိုင်သည်။