0
Avec le code ci-dessous j'ajoute un DIV à la page, auquel j'ajoute un Raphael.Image qui a été pivoté. Le problème est que, bien que les objets DIV et SVG aient la même taille, le SVG ne se place pas au milieu de la DIV mais à la place à l'extérieur de la fenêtre DIVs.Raphaël: Image pivotée égarée
Est-ce que quelqu'un a une solution à cela?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://
www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
<script type="text/javascript" src="js/raphael2.js"></script>
<script type="text/javascript">
$(function() {
$("#btOK").click(function() {
addImage('div8D8EC86F-8AF4-6F13-7595-066F96F06C58');
});
});
function addImage(guid) {
$("#divCanvas #" + guid).remove();
//build div
var $div = $("<div></div>").attr("id", guid).css({ 'position': 'absolute', 'top': '50px', 'left': '400px','border': 'solid 1px #000' });
//add div to canvas
$("#divCanvas").append($div);
//image info
var img = 'http://raphaeljs.com/bd.jpg';
var width = 320;
var height = 240;
//area the paper needs to fit the rotated image
var area = Math.sqrt((width * width) + (height * height));
//angle
var angle = 49;
//paper
var paper = Raphael(guid, area, area);
//add and rotate image
var img = paper.image(img, 0, 0, width,height).transform("r" + angle);
//get image box info
var bb = img.getBBox();
//shrink the papers area
paper.setSize(bb.width, bb.height);
}
</script>
</head>
<body>
<button id="btOK">Add image object</button>
<hr />
<div id="divCanvas"></div>
</body>
</html>