PHP Velho Oeste 2024

imagexbm

(PHP 5, PHP 7, PHP 8)

imagexbmBir XBM görüntüyü tarayıcıya veya dosyaya çıktılar

Açıklama

imagexbm(GdImage $görüntü, ?string $dosya, ?int $önalan = null): bool

Belirtilen görüntünün XBM sürümünü çıktılar veya kaydeder.

Bilginize: imagexbm() herhangi bir dolgulama yapmaz, dolayısıyla resim genişliği 8 ile çarpılmalıdır. Bu sınırlama artık PHP 7.0.9 itibariyle uygulanmıyor.

Bağımsız Değişkenler

görüntü

imagecreatetruecolor() gibi bir görüntü oluşturma işlevinden dönen bir GdImage nesnesi.

dosyaismi

Dizge olarak görüntünün kaydedileceği dosyanın yolu. null verilirse doğrudan ham görüntü akımı çıktılanır.

dosyaismi (.xbm uzantısız) ayrıca XBM'nin C tanımlayıcıları için de kullanılır, dolayısıyla geçerli yerelin alfasayısal olmayan karakterleri altçizgilerle ikame edilir. dosyaismi olarak null verilirse görüntü C tanıtıcıları için kullanılır.

önalan

imagecolorallocate() tarafından sağlanmış bir tanıtıcı ile bir önalan rengi tanımlayabilirsiniz. Öntanımlı önalan rengi siyahtır. Kalan tüm renkler artalan rengidir.

Dönen Değerler

Başarı durumunda true, başarısızlık durumunda false döner.

Dikkat

Ancak, libgd görüntüyü çıktılamakta başarısız olursa bu işlev true döndürür.

Sürüm Bilgisi

Sürüm: Açıklama
8.0.0 önalan artık null olabiliyor.
8.0.0 Kullanılmayan dördüncü bağımsız değişken kaldırıldı.

Örnekler

Örnek 1 - Bir XBM dosyasının kaydedilmesi

<?php
// Boş bir görüntü oluşturup üzerine bir metin ekle
$resim = imagecreatetruecolor(120, 20);
$metin_rengi = imagecolorallocate($resim, 233, 14, 91);
imagestring($resim, 1, 5, 5, 'Bir deneme dizgesi', $metin_rengi);

// Görüntüyü kaydet
imagexbm($resim, 'dnm.xbm');

// Belleği serbest bırak
imagedestroy($resim);
?>

Örnek 2 - XBM dosyasını farklı bir artalan rengi ile çıktılamak

<?php
// Boş bir görüntü oluşturup üzerine bir metin ekle
$resim = imagecreatetruecolor(120, 20);
$metin_rengi = imagecolorallocate($resim, 233, 14, 91);
imagestring($resim, 1, 5, 5, 'Bir deneme dizgesi', $metin_rengi);

// Yeni önalan rengini ayarla
$önalan_rengi = imagecolorallocate($resim, 255, 0, 0);

// Görüntüyü çıktıla
imagexbm($resim, NULL, $artalan_rengi);

// Belleği serbest bırak
imagedestroy($resim);
?>

Notlar

add a note add a note

User Contributed Notes 1 note

up
0
Anonymous
12 years ago
FlagCreation with some random text inside.

<?php
class Logo{
    private
$colors;
        private
$imgWidth
    private
$imgHeight;  
    private
$img;
    private
$text;

    public function
__construct($width = 100, $height = 60){
       
$this->imgWidth = $width;
       
$this->imgHeight = $height;
       
$this->text = "RND TEXT";
       
$this->createImage();
    }
   
    public function
getText(){
        return
$this->text;
    }
   
    public function
createImage(){
       
$this->img = imagecreatetruecolor($this->imgWidth,$this->imgHeight);
           
$farbe = array(200,200,200);
           
$this->colors[0] = $this->makeColor($farbe);
           
$farbe = array(100,100,200);
           
$this->colors[1] = $this->makeColor($farbe);
       
       
imagefill($this->img,0,0,$this->colors[0]);
               
       
$streifenhoehe = intval($this->imgHeight / 6);       
       
$textgroesse = intval($streifenhoehe *2);
       
$y = 0;
       
$x = 0;
       
       
imagefilledrectangle($this->img,0,0,$this->imgWidth,$streifenhoehe,$this->colors[1]);
       
$y = $this->imgHeight - $streifenhoehe;
       
imagefilledrectangle($this->img,0,$y,$this->imgWidth,$this->imgHeight,$this->colors[1]);
       
       
       
$textma = imagettfbbox ( $textgroesse ,0 , "ARIAL.TTF", $this->text);
       
$textanfang = ($this->imgWidth - ($textma[2] - $textma[0]))/2;
       
$textanfang_hoehe = intval(($this->imgHeight-($textma[7]-$textma[1]))/2);
       
        
imagettftext($this->img, $textgroesse,0,$textanfang, $textanfang_hoehe, $this->colors[1],"ARIAL.TTF", $this->text);
       
       
    }
   
    public function
makeColor($color){
        if (
count($color)%3 != 0)
            return
false;
        else
            return
imagecolorallocate($this->img,$color[0],$color[1],$color[2]);
    }
   
    public function
getImage(){
        
header('Content-Type: image/gif', true);
       
imagejpeg($this->img);
    }   
}

$logo = new Logo(300,180);
$logo->getImage();
?>
To Top