| Home  | Casa  | Hardware  | Networking  | Programmazione  | Software  | Domanda  | Sistemi  |   
Programmazione  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Java Programming

  • Programmazione Javascript

  • PHP /MySQL Programmazione

  • Perl Programming

  • Python Programming

  • rubino Programmazione

  • Nozioni di base di Visual Programming
  •  
    Conoscenza Informatica >> Programmazione >> PHP /MySQL Programmazione >> Content
    Come disegnare un cuore con PHP GD
    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 >

    ? >

    Previous :

    next :
      Articoli Correlati
    ·Come chiudere PHP Tags 
    ·Come inserire in MySQL con PHP 
    ·Come Converti interruzioni di riga a un paragrafo in PH…
    ·Come inserire caratteri arabi in MySQL 
    ·Come controllare una stringa di caratteri danneggiati i…
    ·MySQL Java Tutorial 
    ·Come includere un file PHP nel TPL 
    ·Come convertire accesso a un server MySQL remoto 
    ·MySQL incremento automatico non è sincronizzato 
    ·MS SQL Tipi di dati 
      Articoli in evidenza
    ·Come utilizzare i set di dati su VB.NET 
    ·Come utilizzare una matrice di rotazione in VB.NET 
    ·Come per scorrere le chiavi nella HashMap in Java 
    ·Come aggiungere righe in JTable 
    ·Come eseguire un comando SQL Script 
    ·Come progettare Editor Usando OpenGL 
    ·Procedure PHP 
    ·Come fare un file TLB 
    ·Come includere un prefisso ad un masterizzatore Tapestr…
    ·Come disattivare Turbo su M3 
    Copyright © Conoscenza Informatica http://it.wingwit.com