2010-02-23 12 views
6

Sto lavorando a un sito Web in cui il cliente desidera che gli utenti caricino le immagini di sfondo su un progetto stampabile, ritagliate le dimensioni, aggiungete del testo. Fare questo a più pagine quindi generare un pdf del 'libro'Utilizzo di PHP per ricreare qualcosa di simile a VistaPrint/CafePress/Zazzle. Qualche idea?

Sono in esecuzione nelle seguenti problemi/domande e solo bisogno di vedere dove posso cominciare

  • Ci sono pacchetti di sviluppatore PHP che può fare qualcosa di simile. Ho visto strumenti di ritaglio jQuery ma anche qualcosa per aggiungere testo a un'immagine?

  • Come mantenere la risoluzione? Se il finale ritagliato con l'immagine del testo deve essere di 150 dpi, durante il ritaglio immagino che li farei lavorare su un'immagine a 72 dpi, quindi applicare in qualche modo il ritaglio e le modifiche all'immagine grande?

Se il problema di risoluzione non è stato un grosso problema vorrei andare in questo modo:

  • Semplice immagine di upload
  • utilizzare jQuery per foto delle colture per correggere dimensioni
  • Mess intorno con gdlibrary e imagettftext() per ottenere il testo su un'immagine (pagina)
  • Utilizzare qualcosa come FPDF per creare un pdf da ciascuna 'pagina'

È questo il modo giusto per farlo e qualsiasi idea sul problema della risoluzione. Grazie per tutto l'aiuto!

risposta

4

Lo strumento principale deve essere ImageMagick. ImageMagick può eseguire il ritaglio, ridimensionamento, ridimensionamento, sovrapposizione di testo o grafica, combinazione di immagini e applicazione di effetti speciali. Un grande vantaggio dell'utilizzo di uno strumento separato invece degli strumenti di manipolazione delle immagini di PHP è che è possibile eseguire le stesse trasformazioni in batch tramite altri meccanismi, o anche consegnare il lavoro a un altro server per mantenere il sito Web più reattivo. E se si desidera integrarlo strettamente nel sito Web, è possibile utilizzare l'interfaccia MagickWand For PHP.

Il ritaglio non cambia DPI, solo le dimensioni dell'immagine. Il ridimensionamento, d'altra parte, ha cambiato entrambi.

Dovresti dare un'occhiata a Gallery, un programma GPL con alcune delle funzionalità che stai cercando e scritto in PHP.

+0

La mia preoccupazione principale è che probabilmente vorrò che l'utente ritagli, quindi mentre tecnicamente non ridimensiona la foto, vorrei ridimensionarlo in anticipo per renderlo più facile con cui lavorare, quindi avrei in qualche modo tradurre le dimensioni di ritaglio dal 72 dpi al stampabile.O è il modo sbagliato di farlo? – kilrizzy

+0

Capisco ora. Vuoi che visualizzino visivamente dove ritagliare, ma non ritagliare l'immagine che vedono, ma quella più grande/più alta che è stata salvata sul server. Andando per percentuali potrebbe essere abbastanza preciso, a seconda della differenza di pixel tra quella sullo schermo e quella on-server. Assicurati di utilizzare la matematica in virgola mobile. –

+0

Consulta anche http://www.picnik.com/ per un esempio di software di fotoritocco online complesso. –

1

domPDF è un ottimo strumento per convertire HTML in PDF. in questo modo puoi utilizzare l'immagine che caricano come immagine di sfondo, quindi posizionare il testo su di esso in qualsiasi tag HTML standard.

Per quanto riguarda il problema di risoluzione/dpi, non sono sicuro che ci sia molto che si possa fare al di fuori della modifica della dimensione dell'immagine. Consiglierei di esaminare This PHP Library, che ha molti buoni strumenti per manipolare le immagini.

Penso che con una combinazione di questi strumenti, sarete in grado di creare HTML in grado di creare un PDF adatto alla stampa e utilizzarlo.

Problemi correlati