Il linguaggio di programmazione , Hypertext Preprocessor ( PHP) è una libreria grafica chiamata grafico draw ( GD ) . GD consente di creare dinamicamente le immagini in base al mutare delle circostanze , come ad esempio i grafici che vengono sempre aggiornati o watermark sulle immagini caricati dagli utenti . Se si desidera disegnare un cuore o di qualsiasi altra forma , perfezionare le proprie abilità per creare qualsiasi tipo di immagine che si desidera amplierà le possibilità di ciò che si può fare con la libreria GD . Istruzioni 
 1 
 Aprire un editor di testo che non fa la formattazione del testo , ad esempio Blocco note e digitare il tag PHP di apertura : . < Php 
 2 
 scrivere una funzione di Bézier per disegnare curve . La libreria di funzioni GD non include tale funzione , in modo da creare il proprio (vedi Risorse) . La seguente funzione utilizza la funzione GD " imagesetpixel ", che stabilisce un pixel di coordinate specificato dal secondo e il terzo parametro . Il quarto parametro specifica il colore e , come con la maggior parte delle funzioni GD , il primo parametro è un identificatore di immagine. 
 Funzione 
 Bezier ( & $ img , $ x , $ y , $ colore , $ res ) { < br > 
 $ cx = 3 * ( $ x [ 1 ] - $ x [ 0 ] ) ; 
 
 $ bx = 3 * ( $ x [ 2 ] - $ x [ 1 ] ) - $ cx ; 
 
 $ ax = $ x [ 3 ] - $ x [ 0 ] - $ cx - $ bx ; 
 
 $ cy = 3 * ( $ y [ 1 ] - $ y [ 0 ] ) ; 
 
 $ da = 3 * ( $ y [ 2 ] - $ y [ 1 ] ) - $ cy ; 
 
 $ y = $ y [ 3 ] - $ y [ 0 ] - $ cy - $ da ; 
 
 for ( $ i = 0; $ i < = $ res , $ i + + ) { 
 
 $ t = $ i /$ res ; 
 
 $ xt = $ ax * pow ( $ t , 3) + $ bx * pow ( $ t , 2) + $ cx * $ t + $ x [ 0 ] ; 
 
 $ yt = $ ay * pow ( $ t , 3) + $ da * pow ( $ t , 2) + $ cy * $ t + $ y [ 0 ] ; 
 
 imagesetpixel ( $ img , round ( $ xt ) , round ( $ yt ) , $ colore) ; 
 
 } 
 
 } 
 3 
 Inizializzare l'immagine ed i colori che avete bisogno . Nel seguente codice di esempio, l'immagine viene inizializzata ad essere di 200 per 200 pixel , utilizzando la funzione " imagecreate ", che crea anche l'identificativo immagine "$ img ". I colori rosso e bianco vengono inizializzati con la funzione " imagecolorallocate " specificando i valori da 0 a 255 per il rosso , verde e blu . Il primo colore inizializzato diventerà il colore di sfondo 
 
 $ img = imagecreate ( 200 , 200); . 
 
 $ Bianco = imagecolorallocate ( $ img , 255, 255 , 255) ; 
 
 $ rosso = imagecolorallocate ( $ img , 255 , 0 , 0 ) ; 
 4 
 creare due array per la x - e y - coordinate dei quattro punti che determineranno la forma della curva di Bézier . Per specificare la forma della curva , pensare in termini di due vettori tangenti , la cui ampiezza determina la quantità di influenzare la direzione del vettore ha oltre la curva , tanto come il percorso di una pallina cade in un forte vento . Il primo dei quattro punti specifica una delle estremità della curva e la coda del primo vettore , mentre il secondo precisa la testa del vettore . La distanza tra i punti corrisponde alla grandezza e la loro posizione relativa determina la direzione . Il terzo punto è il capo del secondo vettore e il quarto punto è la coda del vettore e l'altro endpoint . 
 
 Nel seguente esempio , i quattro punti sono ( 100 , 40 ) , ( 150 , -10 ) , ( 250 , 80 ) e (100 , 180 ) , dove il superiore sinistro dell'immagine è ( 0 , 0 ) . L'X- coordinate per i punti finali sono sia 100, che li concentra nella tela da sinistra a destra . Le coordinate y indicare il primo punto finale a 40 è sopra l'altra a 180 . Le teste vettoriali sono sia sopra ea destra dei rispettivi punti finali . Separare il - x e y - coordinate nelle loro schiere : 
 
 $ x_coords = array ( 100 , 150 , 250 , 100); 
 
 $ y_coords = array ( 40 , -10 , 80 , 180 ) ; 
 5 
 disegnare la curva con la funzione di Bézier creato nel passaggio 2 . Nella funzione , ad esempio, il primo parametro è l'identificatore dell'immagine ; le prossime due parametri sono le matrici per la x - e y - coordinate , mentre il quarto è il colore , e l'ultimo è la risoluzione . Il parametro risoluzione determina il numero di punti da tracciare , quindi specificare i numeri più grandi per curve ben definite . Ad esempio, digitare : 
 
 Bezier ( $ img , $ x_coords , $ y_coords , $ rosso , 500) ; 
 6 
 Ridefinire le coordinate per disegnare la curva sul lato sinistro della cuore , e tracciare con la funzione di Bézier . I punti finali per la curva sinistra sono uguali a quelli per il diritto . L' unica cosa che cambia è l' x - coordinate per le teste di vettore . Quelli nuovi devono essere quanto più a sinistra del centro, come i precedenti erano a destra del centro in modo che ogni lato per essere come un'immagine speculare dell'altro. Ad esempio, digitare : 
 
 $ x_coords [ 1 ] = 50 ;//Prima testa vettoriale è stato 150 
 
 $ x_coords [ 2 ] = -50 ;//Seconda testa vettoriale è stato di 250 . . 
 
 bezier ( $ img , $ x_coords , $ y_coords , $ rosso , 500) ; 
 7 
 Visualizzare l'immagine e distruggere l'oggetto immagine per liberare la memoria . La funzione "header " è necessario per il browser tratterà l' uscita come immagine. Terminare il file con la chiusura del tag PHP . Ad esempio, digitare : 
 intestazione 
 ( " Content-type : image /jpeg " ) ; 
 
 imagepng ( $ img ) ; 
 
 imagedestroy ( $ img ) ; < br > 
 ? >