2010-08-16 4 views
1

Ayant jusqu'à présent seulement utilisé la bibliothèque d'image gd de PHP pour redimensionner, recadrer et les images en niveaux de gris, je suis actuellement en train de trouver un moyen de simuler ce qui se passe quand, couche sur une image en niveaux de gris et sélectionnez «multiplier» dans le menu des effets de calque. Ou, comme mon ancien conférencier l'expliquerait, j'ai besoin de faire un duotone. Pour une raison quelconque, j'avais pensé que tout ce que je devais faire était de simplement faire pivoter l'image en échelle de gris, puis de laisser tomber un calque coloré avec une valeur de transparence inférieure à 100% par-dessus. Une fois que j'avais fait cela, je me demandais pourquoi je pensais que j'aurais autre chose que du délavé. Ayant ensuite chaluté la documentation de la bibliothèque gd, tout ce que j'ai pu trouver était le filtre IMG_EFFECT_OVERLAY à utiliser avec imagelayereffect mais le résultat de cela garde le blanc de mon image en niveaux de gris en blanc plutôt que de le rendre rouge.Simulez Photoshop Multiply en PHP avec gd ou ImageMagick

Je n'ai jamais utilisé ImageMagick auparavant (mais c'est l'une de ces rares occasions où j'ai le contrôle sur le serveur pour pouvoir l'installer si nécessaire) et, après avoir jeté un coup d'œil sur la documentation par le passé, j'avais supposé que quelque chose comme Photoshop multiply serait l'un de ses filtres par défaut. Hélas non. Mon cerveau fatigué a du mal à comprendre ce que fait réellement Pixel pour Photoshop multiply donc je ne sais pas quelle série de filtres de base ImageMagick (ou si possible, gd) je pourrais utiliser pour obtenir le résultat dont j'ai besoin.

Une échéance approche et Google refuse de vous communiquer des résultats utiles. Nous vous serions reconnaissants de nous aider.

Répondre

2

ImageMagick est-ce que a un multiply operation. Je ne peux pas dire à quel point c'est proche de la qualité et du résultat de Photoshop (je ne comprends pas vraiment ce que ça fait :), mais assurez-vous de l'essayer.

+0

Je pensais que ce serait, je vous remercie tellement pour la référence. Je vais examiner cela et si c'est proche, je vais vous donner la grosse tique verte. –

1

Pour ce que ça vaut, voici une collection de scripts ImageMagick pratiques. Ils ne sont pas à moi, mais je trouve souvent moi-même renvoyant les

ImageMagick Scripts

3

Je trouve cela la meilleure façon d'appliquer Multiplier ImageMagick PHP

$print = new Imagick("blank.jpg"); 
$printOverlayTexture = new Imagick("overlay.jpg"); 
$print->compositeImage($printOverlayTexture, Imagick::COMPOSITE_MULTIPLY, 0, 0);