Question

J'utilise un DisplayForm pour ma classe de vue et Réussi rendu un champ NamedBlobImage avec:

<span tal:replace="structure view/w/image/render" />

Comment puis-je modifier que ZPT pour afficher une taille d'image différente comme « image_mini » ou tout autre de plone.app.imaging?

Était-ce utile?

La solution

Vous devez utiliser plone.app.imaging pour cela.

Ce serait comme:

<img tal:define="scales context/@@images;
                 thumbnail python: scales.scale('image', width=64, height=64);"
     tal:condition="thumbnail"
     tal:attributes="src thumbnail/url;
                     width thumbnail/width;
                     height thumbnail/height" />

Si le contexte est l'objet qui contient l'image et de l'image (sur scales.scale ( « image » ...) est le nom du champ qui a l'image que vous voulez redimensionner.

Si vous voulez utiliser l'image prédéfinie tailles juste utilisation:

<img tal:define="scale context/@@images"
     tal:replace="structure python: scale.scale('image',
                  scale='mini').tag()" />

Vive

Autres conseils

Tout comme avec des champs d'image Archétypes, un ensemble d'échelles prédéfinies sont automatiquement disponibles dans Dextérité. Le raccourci pratique pour obtenir à ces derniers est d'utiliser le code comme:

<img src=”#” tal:replace=”structure
 context/@@images/fieldname/scale” />

où « fieldname » est le nom du champ et « échelle » est l'une des échelles prédéfinies.

Jetez un oeil à http://pypi.python.org/pypi /plone.namedfile/#image-scales pour une information complète.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top