2014-07-26 2 views
1

Dans Raphaeljs, le contenu dépasse la taille de la toile. Ce que je veux faire est d'avoir la toile se développer et avoir un conteneur autour de la toile qui est défilable pour que l'utilisateur puisse voir tout le contenu.Raphaeljs redimensionner la toile pour s'adapter au contenu

<div class="canvas_container" id="canvas_container"> 
    <svg> 
    </svg> 
</div> 

Est-il possible que je peux Redimensionner la toile Raphaeljs après tout le contenu a été chargé afin qu'il adapte tout? Fondamentalement, une «échelle pour s'adapter». Mon conteneur canvas_container est configuré pour avoir un débordement défilant, donc si je peux simplement redimensionner Raphaeljs pour qu'il corresponde à tout, alors ça devrait marcher.

Répondre

1

Vous pouvez itérer sur tous les éléments de votre canevas Raphael et obtenir les cadres de délimitation pour calculer la taille de votre image, puis redimensionner le canevas. Les méthodes Paper.forEach, Element.getBBox et Paper.setSize seraient utiles.

+0

Oui, c'est ce que j'ai fini par faire. J'espérais qu'il y avait un joli "redimensionner pour s'adapter" appel ou quelque chose qui me manquait, mais ne ressemble pas il y a :) – cloudwalker

Questions connexes