Visualizzazione risultati 1 fino 9 di 9
Like Tree4Likes
  • 1 Post By alemoppo
  • 1 Post By karl94
  • 1 Post By alemoppo
  • 1 Post By mzanella

Discussione: [GD] Disegnare PNG su altra PNG

  1. #1
    cctools non  connesso Utente AlterBlog
    Data registrazione
    12-09-2016
    Messaggi
    8

    Predefinito [GD] Disegnare PNG su altra PNG

    Supponendo di avere un'immagine a.png ($a) e una b.png ($b) di stessa dimensione, entrambe png trasparenti, come faccio a disegnare $a su $b?

    Grazie in anticipo!

  2. #2
    L'avatar di alemoppo
    alemoppo non  connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

  3. #3
    cctools non  connesso Utente AlterBlog
    Data registrazione
    12-09-2016
    Messaggi
    8

    Predefinito

    Grazie, ho provato con la seguente
    <?php
    $background=imagecreatefrompng("a.png");
    $insert=imagecreatefrompng("b.png");
    $insert_x=imagesx($insert);
    $insert_y=imagesy($insert);
    imagecopyresampled($background,$insert,0,0,0,0,$in sert_x,$insert_y,$insert_x,$insert_y);
    imagepng($background);
    imagedestroy($background);
    imagedestroy($insert);
    ?>
    Ma ottengo questo...
    ‰PNG  IHDRBAR‚tPLTE“~KZf\%  šT‘QVœv4˜†DRAG47-p7nV/dHkŽh%xb1t\0_D\M$ƒk7&# €f6*Š=P>‡=iR(}\0  ~̝`„^]^ž c,j€c5""*žKy‰=סAF3A‚+W c9S3nUFRc9–›^ZS7tUx=(œ‰OšZhwu az”@—vA|/4YMXFD;pb3‚in7F:/4gs;|c9ƒ1?b1/-=Y,ƒbS?6 Ȼs\r;8+$pK>‰b4+~Ktn‚04+ ž„Œ—Lf[Bq2^R“žY*Sr\œHwHˆPšC=9M!*);rGA#C4 tsaAš6xgھ25qbN@C7‹nظx#Sw!A9F7p ]QC’ŒS;/r^dt*‡n1d‚h€†IK>CHP, 6"aƒ<�IDATX…ֱn0Pš‹|M"ž‡NY ”l™‚,#y]b $|6*,;Ÿ/^cOUBkmŒWZ‚K?@`pPš ‚_&+3&`ō›r 8.)"M6=w"›R"10Nd0 }%Z \O%7G8q™#ŽœTZt]]W„W9mP8ďCˆGit˜‘BKffO@Or6##8Œ 0bœɫgK`{œ Zœ„DB X…‰Œωe4Fœ™" >}#:>!@DY–6dDHˆ%Š#Sy%:}Q›*#`‚*1 „{_TE1$\`gC‡K;lRL„GHmž„RŠ}C‡Iˆ*š f_ˆd`=$Œ‡8;TŠ!G#>>BŸx,w‚…Ab^ …‡‰i-š>.“PjD|‚t n5'73 >pIENDB`‚

  4. #4
    karl94 non  connesso Staff AV
    Data registrazione
    03-10-2005
    Messaggi
    17,744

    Predefinito

    Devi inviare il corretto header HTTP Content-Type al browser per indicare che quella un'immagine PNG.
    cctools likes this.

  5. #5
    cctools non  connesso Utente AlterBlog
    Data registrazione
    12-09-2016
    Messaggi
    8

    Predefinito

    Grazie, ho risolto con qualche 'workaround'. Ora, per non aprire un altro thread ve lo chiedo direttamente qui..

    Se volessi includere l'immagine generata, mettiamo caso dal file genera.php, come includo quell'immagine in un'altra pagina PHP senza che vi sia la pagina con la sola immagine generata?

  6. #6
    L'avatar di alemoppo
    alemoppo non  connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Puoi includerlo come fosse una semplice immagine, tipo:
    Codice HTML:
    <img src="tuapagina.php">
    Ciao!
    cctools likes this.

  7. #7
    cctools non  connesso Utente AlterBlog
    Data registrazione
    12-09-2016
    Messaggi
    8

    Predefinito

    Perfetto, grazie mille!

  8. #8
    cctools non  connesso Utente AlterBlog
    Data registrazione
    12-09-2016
    Messaggi
    8

    Predefinito

    Scusate ancora, innanzitutto per il doppio post, ma il problema a cui facevo riferimento un altro...

    Il fatto che le variabili stanno in un file a.php per esempio, mentre il file che genera di fatto l'immagine b.php. Non potendo mettere tutto nella stessa pagina, come faccio a generare l'immagine da b.php prendendo le variabili di a.php? Se no in alternativa dovrei far s che il file a.php crei il file b.php con tutto il codice di output in modo che possa essere incluso senza problemi nuovamente da a.php... Ma non so se a livello di sicurezza pu rendere....

  9. #9
    mzanella non  connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,954

    Predefinito

    Chiarisci meglio cos' a.php: si tratta di un file PHP che produce contenuto HTML nel quale presente un'immagine del tipo <img src="b.php">? Se cos puoi passare le variabili tramite GET:
    Codice:
    echo "<img src='b.php?a=$a&amp;b=$b>"
    (con gli eventuali urlencode ed abbellimenti del caso).

    Se no in alternativa dovrei far s che il file a.php crei il file b.php con tutto il codice di output in modo che possa essere incluso senza problemi nuovamente da a.php
    Meglio scartare fin da subito idee come queste . Cosa succederebbe, ad esempio, se due client accedessero simultaneamente ad a.php? I due processi di "generazione" di b.php diventerebbero concorrenti, eventualmente cercando di scrivere simultaneamente su b.php (race condition).
    karl94 likes this.

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •