Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing"
Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing"
La nuova Insta360 X6 introduce sensori Sony da 1/1.1" e un SoC Triple AI a 4nm. Analizziamo le riprese 8K, il primo Dolby Vision nativo a 10-bit nel settore sferico e l'innovativo flusso di lavoro diretto sulla futura versione 22 di DaVinci Resolve.
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli
Dopo due settimane trascorse al volante della Dacia Spring 2026 possiamo raccontarvi tutto, dalle novità di motore e batteria, fino ai consumi in tutti le situazioni, compresa l'autonomia reale ad alta velocità
AORUS GeForce RTX 5080 INFINITY WOOD 16G: una scheda video diversa dalle altre
AORUS GeForce RTX 5080 INFINITY WOOD 16G: una scheda video diversa dalle altre
Abbiamo messo alla prova la nuova AORUS GeForce RTX 5080 INFINITY WOOD 16G, una delle interpretazioni più particolari della GPU NVIDIA Blackwell. Prestazioni, frequenze operative, temperature, consumi e margini di overclock sono stati confrontati con altre RTX 5080 custom e con la Founders Edition. Il design in legno è solo uno degli elementi distintivi di una scheda che punta a ritagliarsi uno spazio nella fascia più alta del mercato.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-07-2006, 14:31   #1
ianaz
Senior Member
 
L'Avatar di ianaz
 
Iscritto dal: Jan 2005
Città: London, United Kingdom
Messaggi: 959
[PHP] domanda $this->variabile

Salve,
ho appena iniziato con l'utilizzo delle classi e della libreria gd.
Questo pomeriggio mi sono trovato dinnanzi il seguente problema:

Il $this->variabile non mi funziona...
Mi dice Notice: Undefined property: im in c:\programmi\easyphp1-8\www\img.class.php on line 41
Il mio problema é come fare ad utilizzare la variabile $im nelle altre funzioni?
Potrei passarlo in ogni funzione ma mi pare piuttosto un codice sporco
Il codice della classe é;

potrebbero esserci piccoli errori che per provare forse ho dimenticato di rimettere a posto...
Codice PHP:
<?php
    
class img
    
{
        var 
$errore = array(
                                
"Errore sconosciuto"// 0
                                
"Errore nel caricamento dell immagine" // 1
                        
);

        function 
loadImg($img_percorso$testo)
        {
            
$im imagecreatefromjpeg($img_percorso);    
            
$this->insertLogo($im"logo.png");
            
$this->insertTesto($testo);
            
$this->saveImg();
            return 
1;
        }
        
        function 
insertLogo($im$logoz="logo.png")
        {
            
$watermark imagecreatefrompng($logoz);
            
$waterm_w  imagesx($watermark);
            
$waterm_h  imagesy($watermark);
            
imagecopymerge($im$watermark0000$waterm_w$waterm_h100);
        }
        
        function 
insertTesto($testo)
        {
        
            
$colore['bianco']    = imagecolorallocate($im255255255);
            
$colore['blu']        = imagecolorallocate($im00255);
            
$colore['rosso']    = imagecolorallocate($im25500);
            
$colore['verde']    = imagecolorallocate($im02550);
            
$colore['nero']        = imagecolorallocate($im000);
            
$width              imagesx($this->im);
            
$height             imagesy($this->im);
            
$testo                 "www.ianaz.ch";
            
$lung_testo         strlen($testo);
            
imagestring($this->im5$width/2-$lung_testo*5$height-20$testo$colore['bianco']);
        }
        function 
saveImg()
        {
            
imagepng($this->im"lol.png");
        }
    }
    
$img = new img;
?>

Nell'altra pagina ho fatto un semplice
Codice PHP:
<?php
    
include "img.class.php";
    
$nome_img 'img.jpg';
    
$immagine $img->loadImg($nome_img"www.ianaz.ch");
    if(
$immagine == 1)
    {
        echo 
"<p>Immagine modificata correttamente!</p>";
    }
?>
__________________
zattix

Ultima modifica di ianaz : 10-07-2006 alle 15:40.
ianaz è offline   Rispondi citando il messaggio o parte di esso
Old 10-07-2006, 16:13   #2
max246
Senior Member
 
Iscritto dal: May 2005
Messaggi: 340
Perchè devi emttere una "VAR IM" se vuoi utilizzare la stessa variabile.
Se è nella stessa funzione non serve.. ma se la utilizzi fuori dalla funzione devi dichiararla prima come var im e poi puoi usare il $this->im o $<nomeclasse>-im


max246 è offline   Rispondi citando il messaggio o parte di esso
Old 10-07-2006, 16:46   #3
ianaz
Senior Member
 
L'Avatar di ianaz
 
Iscritto dal: Jan 2005
Città: London, United Kingdom
Messaggi: 959
Quindi basta che metto semplicemente un var $im sopra?
__________________
zattix
ianaz è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2006, 06:50   #4
ianaz
Senior Member
 
L'Avatar di ianaz
 
Iscritto dal: Jan 2005
Città: London, United Kingdom
Messaggi: 959
Pure mettendo il
var $im;
non funziona.... help
__________________
zattix
ianaz è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2006, 08:21   #5
max246
Senior Member
 
Iscritto dal: May 2005
Messaggi: 340
Codice PHP:
<?php
    
class img
    
{
        var 
$errore = array(
                                
"Errore sconosciuto"// 0
                                
"Errore nel caricamento dell immagine" // 1
                        
);
        var 
$im "";
        function 
loadImg($img_percorso$testo)
        {
            
$im imagecreatefromjpeg($img_percorso);    
            
$this->insertLogo($im"logo.png");
            
$this->insertTesto($testo);
            
$this->saveImg();
            return 
1;
        }
        
        function 
insertLogo($im$logoz="logo.png")
        {
            
$watermark imagecreatefrompng($logoz);
            
$waterm_w  imagesx($watermark);
            
$waterm_h  imagesy($watermark);
            
imagecopymerge($im$watermark0000$waterm_w$waterm_h100);
        }
        
        function 
insertTesto($testo)
        {
        
            
$colore['bianco']    = imagecolorallocate($im255255255);
            
$colore['blu']        = imagecolorallocate($im00255);
            
$colore['rosso']    = imagecolorallocate($im25500);
            
$colore['verde']    = imagecolorallocate($im02550);
            
$colore['nero']        = imagecolorallocate($im000);
            
$width              imagesx($this->im);
            
$height             imagesy($this->im);
            
$testo                 "www.ianaz.ch";
            
$lung_testo         strlen($testo);
            
imagestring($this->im5$width/2-$lung_testo*5$height-20$testo$colore['bianco']);
        }
        function 
saveImg()
        {
            
imagepng($this->im"lol.png");
        }
    }
    
$img = new img;
?>
max246 è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2006, 08:31   #6
ianaz
Senior Member
 
L'Avatar di ianaz
 
Iscritto dal: Jan 2005
Città: London, United Kingdom
Messaggi: 959
Warning: imagecolorallocate(): supplied argument is not a valid Image resource in c:\programmi\easyphp1-8\www\img.class.php on line 29

ora mi da questo errore...praticamente non la vede come immagine
__________________
zattix

Ultima modifica di ianaz : 11-07-2006 alle 08:34.
ianaz è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2006, 08:46   #7
max246
Senior Member
 
Iscritto dal: May 2005
Messaggi: 340
Codice PHP:
<?php
    
class img
    
{
        var 
$errore = array(
                                
"Errore sconosciuto"// 0
                                
"Errore nel caricamento dell immagine" // 1
                        
);
        var 
$im "";
        function 
loadImg($img_percorso$testo)
        {
            
$im imagecreatefromjpeg($img_percorso);    
            
$this->insertLogo($im"logo.png");
            
$this->insertTesto($testo);
            
$this->saveImg();
            return 
1;
        }
        
        function 
insertLogo($im$logoz="logo.png")
        {
            
$watermark imagecreatefrompng($logoz);
            
$waterm_w  imagesx($watermark);
            
$waterm_h  imagesy($watermark);
            
imagecopymerge($im$watermark0000$waterm_w$waterm_h100);
        }
        
        function 
insertTesto($testo)
        {
        
            
$colore['bianco']    = imagecolorallocate($this->im255255255);
            
$colore['blu']        = imagecolorallocate($this->im00255);
            
$colore['rosso']    = imagecolorallocate($this->im25500);
            
$colore['verde']    = imagecolorallocate($this->im02550);
            
$colore['nero']        = imagecolorallocate($this->im000);
            
$width              imagesx($this->im);
            
$height             imagesy($this->im);
            
$testo                 "www.ianaz.ch";
            
$lung_testo         strlen($testo);
            
imagestring($this->im5$width/2-$lung_testo*5$height-20$testo$colore['bianco']);
        }
        function 
saveImg()
        {
            
imagepng($this->im"lol.png");
        }
    }
    
$img = new img;
?>
max246 è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2006, 08:55   #8
ianaz
Senior Member
 
L'Avatar di ianaz
 
Iscritto dal: Jan 2005
Città: London, United Kingdom
Messaggi: 959
ehm....e cosa cambia?

Il codice attuale é (tolto l'inserimento del testo che é inutile):

Codice PHP:
<?php
    
class img 
    

        var 
$errore = array( 
                                
"Errore sconosciuto"// 0 
                                
"Errore nel caricamento dell immagine" // 1 
                        
); 
        var 
$im
        function 
loadImg($img_percorso$testo$posizione_x$posizione_y
        { 
            
$im     imagecreatefromjpeg($img_percorso); 
            
$im_w   imagesx($im); 
            
$im_h   imagesy($im); 
            
$this->insertLogo($im"logo.png"); 
            
//$wt_x     = $this->calc_pos_x($posizione_x);
            //$wt_y     = $this->calc_pos_y($posizione_y);
            
$this->saveImg(); 
            return 
1
        } 
         
        function 
insertLogo($im$logoz="logo.png"
        { 
            
$watermark imagecreatefrompng($logoz); 
            
$waterm_w  imagesx($watermark); 
            
$waterm_h  imagesy($watermark); 
            
imagecopymerge($im$watermark0000$waterm_w$waterm_h100); 
        } 
        
        
/*    
        function calc_pos_x($position_x='LEFT')
        {
            switch($position_x)
            {
                case 'LEFT':
                    $x = 0;
                    break;
                case 'CENTER':
                    $x = $this->im_w / 2 - $this->waterm_w;
                    break;
                case 'RIGHT':
                    $x = $this->im_w - $this->waterm_w;
                    break;
                default:
                    $x = 0;
            
            } 
            return $x;
        
        }
        
        function calc_pos_y($position_y='TOP')
        {
            switch($position_y)
            {
                case 'TOP':
                    $y = 0;
                    break;
                case 'MIDDLE':
                    $y = $this->im_h / 2 - $this->waterm_h;
                    break;
                case 'BOTTOM':
                    $y = $this->im_h - $this->waterm_h;
                    break;
                default:
                    $y = 0;
            
            }
            return $y;
        
        }
        */
        
        
function saveImg()
        {
            
imagepng($this->im"lol.png"); 
        }
    } 
    
$img = new img
?>

Quindi ora l'errore me lo da solamente alla creazione dell'immagine
Codice PHP:
imagepng($this->im"lol.png"); 
che dice is not a valid Image resource
__________________
zattix

Ultima modifica di ianaz : 11-07-2006 alle 09:00.
ianaz è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2006, 09:03   #9
max246
Senior Member
 
Iscritto dal: May 2005
Messaggi: 340
ti potei picchiare

$im = imagecreatefromjpeg($img_percorso);

$im è una variabile locale non $this->im ....
max246 è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2006, 09:09   #10
ianaz
Senior Member
 
L'Avatar di ianaz
 
Iscritto dal: Jan 2005
Città: London, United Kingdom
Messaggi: 959
Quote:
Originariamente inviato da max246
ti potei picchiare

$im = imagecreatefromjpeg($img_percorso);

$im è una variabile locale non $this->im ....
e infatti io ^come ho fatto? -.-

$im = imagecreatefromjpeg($img_percorso);
__________________
zattix
ianaz è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2006, 09:29   #11
max246
Senior Member
 
Iscritto dal: May 2005
Messaggi: 340
ora ti picchio veramente tanto sei a 2 km di distanza vengo li....


$im è una variabile che tiene solo nella funziona non nella classe, se metti $this->im la inserisci nella variabile dichiarata nella classe

DEVI METTERE $this->im non $im
max246 è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2006, 09:36   #12
ianaz
Senior Member
 
L'Avatar di ianaz
 
Iscritto dal: Jan 2005
Città: London, United Kingdom
Messaggi: 959
Quote:
Originariamente inviato da max246
ora ti picchio veramente tanto sei a 2 km di distanza vengo li....


$im è una variabile che tiene solo nella funziona non nella classe, se metti $this->im la inserisci nella variabile dichiarata nella classe

DEVI METTERE $this->im non $im
uahhahhah cucciolooooo
tu intendi fare:
Codice PHP:
function loadImg($img_percorso$posizione_x$posizione_y
        { 
            
$this->im     imagecreatefromjpeg($img_percorso); 
            
$im_w   imagesx($im); 
            
$im_h   imagesy($im); 
            
$this->insertLogo($im"logo.png"); 
            
$wt_x     $this->calc_pos_x($posizione_x);
            
$wt_y     $this->calc_pos_y($posizione_y);
            
$this->saveImg(); 
            return 
1
        } 
giusto?

e guarda gli errori che mi da dopo:

Codice:
Notice: Undefined variable: im in c:\programmi\easyphp1-8\www\img.class.php on line 12

Warning: imagesx(): supplied argument is not a valid Image resource in c:\programmi\easyphp1-8\www\img.class.php on line 12

Notice: Undefined variable: im in c:\programmi\easyphp1-8\www\img.class.php on line 13

Warning: imagesy(): supplied argument is not a valid Image resource in c:\programmi\easyphp1-8\www\img.class.php on line 13

Notice: Undefined variable: im in c:\programmi\easyphp1-8\www\img.class.php on line 14

Warning: imagecopymerge(): supplied argument is not a valid Image resource in c:\programmi\easyphp1-8\www\img.class.php on line 26

é nella funzione loadImg() che creo la variabile $im e quindi devo utilizzarla come $im al suo interno no?!



LOL
__________________
zattix
ianaz è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2006, 09:51   #13
max246
Senior Member
 
Iscritto dal: May 2005
Messaggi: 340
Codice PHP:
<?php
    
class img
    
{
        var 
$errore = array(
                                
"Errore sconosciuto"// 0
                                
"Errore nel caricamento dell immagine" // 1
                        
);
        var 
$im;

        function 
loadImg($img_percorso$testo)
        {
            
$this->im imagecreatefromjpeg($img_percorso);    
            
$this->insertLogo($this->im"logo.png");
            
$this->insertTesto($testo);
            
$this->saveImg();
            return 
1;
        }
        
        function 
insertLogo($im$logoz="logo.png")
        {
            
$watermark imagecreatefrompng($logoz);
            
$waterm_w  imagesx($watermark);
            
$waterm_h  imagesy($watermark);
            
imagecopymerge($im$watermark0000$waterm_w$waterm_h100);
        }
        
        function 
insertTesto($testo)
        {
        
            
$colore['bianco']    = imagecolorallocate($this->im255255255);
            
$colore['blu']        = imagecolorallocate($this->im00255);
            
$colore['rosso']    = imagecolorallocate($this->im25500);
            
$colore['verde']    = imagecolorallocate($this->im02550);
            
$colore['nero']        = imagecolorallocate($this->im000);
            
$width              imagesx($this->im);
            
$height             imagesy($this->im);
            
$testo                 "www.ianaz.ch";
            
$lung_testo         strlen($testo);
            
imagestring($this->im5$width/2-$lung_testo*5$height-20$testo$colore['bianco']);
        }
        function 
saveImg()
        {
            
imagepng($this->im"lol.png");
        }
    }
    
$img = new img;
?>

e se non funziona cosi ti uccidi...
max246 è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2006, 09:53   #14
ianaz
Senior Member
 
L'Avatar di ianaz
 
Iscritto dal: Jan 2005
Città: London, United Kingdom
Messaggi: 959
Ok, grazie mille

quindi nel nuovo ora é così:

Codice PHP:
function loadImg($img_percorso$posizione_x$posizione_y
        { 
            
$this->im     imagecreatefromjpeg($img_percorso); 
            
$im_w       imagesx($this->im); 
            
$im_h       imagesy($this->im); 
            
$this->insertLogo($this->im"logo.png"); 
            
$wt_x         $this->calc_pos_x($posizione_x);
            
$wt_y         $this->calc_pos_y($posizione_y);
            
$this->saveImg(); 
            return 
1
        } 
ma non sapevo che bisognava mettere $this->im anche all'interno dove si crea...come mai?
Perché l'ho dichiarata sopra con il var?
__________________
zattix

Ultima modifica di ianaz : 11-07-2006 alle 09:56.
ianaz è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2006, 09:55   #15
max246
Senior Member
 
Iscritto dal: May 2005
Messaggi: 340
$im con $this->im ( sta diventando una chat di msn questo topic...)
max246 è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2006, 09:56   #16
ianaz
Senior Member
 
L'Avatar di ianaz
 
Iscritto dal: Jan 2005
Città: London, United Kingdom
Messaggi: 959
e ma lol, se entro in msn mi uccidono
__________________
zattix
ianaz è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2006, 10:02   #17
ianaz
Senior Member
 
L'Avatar di ianaz
 
Iscritto dal: Jan 2005
Città: London, United Kingdom
Messaggi: 959
il var $im; si poteva anche tralasciare se non sbaglio no?!
__________________
zattix
ianaz è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2006, 10:14   #18
ianaz
Senior Member
 
L'Avatar di ianaz
 
Iscritto dal: Jan 2005
Città: London, United Kingdom
Messaggi: 959
Ok così é perfettamente funzionante:

Codice PHP:
<?php
    
class img 
    

        var 
$errore = array( 
                                
"Errore sconosciuto"// 0 
                                
"Errore nel caricamento dell immagine" // 1 
                        
); 
        var 
$im
        function 
loadImg($img_percorso$posizione_x$posizione_y
        { 
            
$this->im             imagecreatefromjpeg($img_percorso); 
            
$this->im_w           imagesx($this->im); 
            
$this->im_h           imagesy($this->im); 
            
$this->logoProperties("logo.png"); 
            
$this->wt_x         $this->calc_pos_x($posizione_x);
            
$this->wt_y         $this->calc_pos_y($posizione_y);
            
imagecopymerge($this->im$this->watermark$this->wt_x$this->wt_y00$this->waterm_w$this->waterm_h100);
            
$this->saveImg(); 
            return 
1
        } 
         
        function 
logoProperties($logoz="logo.png"
        { 
            
$this->watermark imagecreatefrompng($logoz); 
            
$this->waterm_w  imagesx($this->watermark); 
            
$this->waterm_h  imagesy($this->watermark);  
        } 
        
        
        function 
calc_pos_x($position_x='LEFT')
        {
            switch(
$position_x)
            {
                case 
'LEFT':
                    
$x 0;
                    break;
                case 
'CENTER':
                    
$x $this->im_w $this->waterm_w 2;
                    break;
                case 
'RIGHT':
                    
$x $this->im_w $this->waterm_w;
                    break;
                default:
                    
$x 0;
            
            } 
            return 
$x;
        
        }
        
        function 
calc_pos_y($position_y='TOP')
        {
            switch(
$position_y)
            {
                case 
'TOP':
                    
$y 0;
                    break;
                case 
'MIDDLE':
                    
$y $this->im_h $this->waterm_h 2;
                    break;
                case 
'BOTTOM':
                    
$y $this->im_h $this->waterm_h;
                    break;
                default:
                    
$y 0;
            
            }
            return 
$y;
        
        }
        
        function 
saveImg()
        {
            
imagepng($this->im"lol.png"); 
        }
    } 
    
$img = new img
    
?>



grazie
__________________
zattix
ianaz è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2006, 12:31   #19
max246
Senior Member
 
Iscritto dal: May 2005
Messaggi: 340
non andava bene quello che ti avevo fatto io?
max246 è offline   Rispondi citando il messaggio o parte di esso
Old 11-07-2006, 12:54   #20
ianaz
Senior Member
 
L'Avatar di ianaz
 
Iscritto dal: Jan 2005
Città: London, United Kingdom
Messaggi: 959
Quote:
Originariamente inviato da max246
non andava bene quello che ti avevo fatto io?
???
si...bigolo
__________________
zattix
ianaz è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing" Insta360 X6: Dolby Vision, 8K e montaggio "...
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli Due settimane con Dacia Spring 2026: novit&agrav...
AORUS GeForce RTX 5080 INFINITY WOOD 16G: una scheda video diversa dalle altre AORUS GeForce RTX 5080 INFINITY WOOD 16G: una sc...
Hyundai Ioniq 9: dopo due settimane di test non avremmo voluto restituirla Hyundai Ioniq 9: dopo due settimane di test non ...
LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e Dual Mode LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e...
Il nuovo Samsung Galaxy S26 FE non ha pi...
Anthropic firma 9,1 miliardi con un mine...
Reflect Orbital ammette: un telescopio d...
Meta ha lanciato la nuova app Facebook C...
Offerta lancio pazzesca per Pixel 11 Pro...
Questa è l'auto del futuro che so...
Google lancia i Pixel 11, Pixel Watch 5 ...
Microsoft sfida i cinesi: il nuovo model...
XPeng esagera: ecco la G9L, 5,1 m di lun...
SpaceX potrebbe tornare a utilizzare pia...
Quando l'IA allucina nei campi: il model...
La pubblicità di iPhone che indig...
NVIDIA prepara un LLM gigante da oltre m...
ESA e Arianespace avrebbero cancellato l...
I fari di alcune Tesla sono troppo lumin...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 05:55.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v