Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 24

Discussione: imagemagick

  1. #11
    scarica nconvert per windows, lo decomprimi, avvii una console (Start -> Esegui -> scrivi cmd e batti ok) ti sposti nella directory dove hai scaricato il file e lo hai decompresso ( cd \path\alla\directory\di\nconvert) e poi fai nconver -help (o --help nn ricordo ... li ti assicuro troverai un pianeta intero di opzioni per fare tuttò lo scibile umano )
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  2. #12
    Tu mi hai indicato la versione per windows che ora proverò ma sul mio server dedicato è installato centos. Immagino che esista anche una versione per linux di nconvert. Non pensi che una volta installato su Linux avrò gli stessi problemi di permessi che ora mi ritrovo ad avere con IM? Il mio problema è riuscire a fare questa benedetta conversione e resize di bmp e tiff. Per quanto riguarda le prestazioni non sono un problema in quanto nel sito verranno uplodate molto raramente immagini di quei due formati, forse anche mai ma essendo un sito per stampe professionali io debbo prevedere anche questa ipotesi. Grazie per l'aiuto

  3. #13
    Originariamente inviato da maurizio54
    Tu mi hai indicato la versione per windows che ora proverò ma sul mio server dedicato è installato centos. Immagino che esista anche una versione per linux di nconvert. Non pensi che una volta installato su Linux avrò gli stessi problemi di permessi che ora mi ritrovo ad avere con IM? Il mio problema è riuscire a fare questa benedetta conversione e resize di bmp e tiff. Per quanto riguarda le prestazioni non sono un problema in quanto nel sito verranno uplodate molto raramente immagini di quei due formati, forse anche mai ma essendo un sito per stampe professionali io debbo prevedere anche questa ipotesi. Grazie per l'aiuto
    Ciao,

    scusami ma da quanto capisco, allora, non vedo a cosa serva supportare il formato BMP che di supporto per immagini professionali non ha nulla

    Direi che a questo punto ti conviene supportare il TIFF, che supporta tante funzionalità come l'angolatura del colore nel punto, le JPEG LOSSLESS, proprio perché sono senza perdita di qualità, e le PNG perché anch'esse non perdono di qualità ... ma le BMP sono un pò un suicidio dato che è un dato liscio, non compresso in alcun modo (attenzione con "compresso" non intendo perdità di dati ma proprio la compressione dei dati)

    A questo punto dovresti supportare anche i formati vettoriali come SVG, PDF e PS

    Comunque, tornando al tuo problema:
    - verifica che il safe_mode sia spento perché se acceso devi impostare una variabile, relativa al safe_mode, nel php.ini per indicare un percorso dove risiedano file eseguibili che php può richiamare
    - essendo che lanci l'eseguibile tramite php devi assicurarti che i permessi del file siano 755, 775 o 777, anche se è consigliata la prima o la seconda impostazione
    - la cartella invece in cui devono finire i file ridimensionati/convertiti deve avere un bel 777 perché è di propietà dell'utente che la crea via ftp/riga di comando e non di apache e quindi php e qualsiasi altro processo che prova a scriverci sbatte contro il muro

    detto questo, che sono le uniche cose che potrebberò crearti problemi lanciandolo via php, ti consiglio di postare eventuali messaggi di errore che di convert restituisce per gli errori ... posta anche i codici di errori

    PS: quando lanci convert aggiungici alla fine 2>&1 in modo che gli dici di ridirezionare lo standard error sullo standard output

    PS2: prova ad usare perror per leggere il codice d'errore, infatti oltre a restituire i codici d'errore di mysql restituisce anche i codici d'errore di sistema ... codici che non sovrapponendosi mai ti permettono di capire che succede ... ovviamente convert quando esce deve restituire un codice d'errore standard altrimenti ciccia
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  4. #14
    Sei davvero gentilissimo, domani appena sono al lavoro provo e ti faccio sapere. Intanto grazie

  5. #15
    Hai ragione che le bmp non hanno nulla di professionale, ma il mio cliente, lo stampatore di immagini digitali, sic! esige che siano supportati questi formati; jpg, bmp, tiff. Come dice Fiorello "chi sono io per sindacare chi paga?" In parole povere anche se è una richiesta strana io debbo fare i conti con quella. Intanto ho provato nconvert su windows ed è veramente favoloso, fa sicuramente al caso mio sempre che lo riesca ad usare su Linux da php. Mi permetto di chiederi ancora una cosa, non ho capito come fare per fargli salvare l'immagine convertita in una cartella di mia scelta. Mi sembra che la possa salvare solo nella cartella in cui si trova l'immagine da convertire. Grazie

  6. #16
    Originariamente inviato da maurizio54
    Hai ragione che le bmp non hanno nulla di professionale, ma il mio cliente, lo stampatore di immagini digitali, sic! esige che siano supportati questi formati; jpg, bmp, tiff. Come dice Fiorello "chi sono io per sindacare chi paga?" In parole povere anche se è una richiesta strana io debbo fare i conti con quella. Intanto ho provato nconvert su windows ed è veramente favoloso, fa sicuramente al caso mio sempre che lo riesca ad usare su Linux da php. Mi permetto di chiederi ancora una cosa, non ho capito come fare per fargli salvare l'immagine convertita in una cartella di mia scelta. Mi sembra che la possa salvare solo nella cartella in cui si trova l'immagine da convertire. Grazie
    non lo uso da una vita, però dovrebbe bastare aggiungere la cartella quando inserisci il nome del file di destinazione

    inoltre, se vuoi un consiglio "progettuale", crea dei file assegnando solamente uno sha1(uniqid(microtime(), true)) in modo da rendere unico al 99.99999% il nome ... una volta fatto inserisci questo stesso valore nel database a cui fa riferimento il file e ci aggiungi le informazioni che ti servono, ovvero il tipo di file ... le dimensioni WxL, la dimensione in byte e cosi via
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  7. #17
    mi permetto di disturbarti ancora: il mio script converti.php è così
    <?php
    echo exec("/usr/bin/convert /var/www/vhosts/xxx/httpdocs/test.jpg /var/www/vhosts/fotofrontier.com/httpdocs/test20.bmp 2>&1");
    ?>
    mi restituisce questo errore

    convert: unable to open image `/var/www/vhosts/xxx/httpdocs/test20.bmp': Permission denied.
    Sembra che lo script non abbia i permessi di scrittura nella directory httpdocs, ma non è possibile, quella è la root dove sta il mio sito e se faccio da php mkdir("miadir",0755) la directory si crea, sto diventando matto ma non riesco ad usare convert. Riesci a darmi u consiglio?

  8. #18
    Mi correggo se faccio uno script dentro la root così
    <?php
    mkdir ("miadir";0777);
    ?>
    ottengo
    Warning: mkdir() [function.mkdir]: Permission denied in /var/www/vhosts/xxx/httpdocs/convert.php on line 2

    non mi era mai capitato di scrivere nella root da script ma credevo di averne i permessi, sai spiegarmi perchè non gli ho da php e da ftp invece si?
    Ho quindi cambiato il converti.php per scrivere in una sotto directory chiamata ordini in questo modo
    <?php

    shell_exec('/usr/bin/convert test.jpg -resize 120x60! ordini/test10.bmp 2>&1');
    ?>
    tutto magicamente funziona.

  9. #19
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    perchè probabilmente il server è configurato in modo che tramite ftp tu acceda alla directory con un determinato utente, mentre apache gira con un altro.

    ciao

  10. #20
    Grazie, ora è tutto chiaro. Avrei bisogno di un altro aiutino:

    debbo eseguire convert su una variabile cioè:

    uno script mi invia una immagine e la pagina che lo riceve lo salva, con il suo path assoluto in $img in cui avrò una cosa del tipo /var/www/vhosts/xxx/httpdocs/ordini/test.tiff. Ora io debbo convertire test.tiff in test.jpg o come mi aveva suggerito Daniele sha1(uniqid(microtime(), true))."jpg". Ora non so come scrivere la cosa nel comando convert. Pensate che così possa andare?
    Codice PHP:
    $nuovonome sha1(uniqid(microtime(), true));
    exec("/usr/bin/convert $img ordini/$nuovonome.jpg"); 

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.