2012-04-23 3 views
2

私はPHP/Javascript/JQueryを使用したインタラクティブなWebサイトで作業しています。ページで 、私は移動および/または(次の図のように)新しい構成を作成して、JPGとして結果を保存するために彼のマウスを使って画像を回転させるために訪問者に提案したい...JQuery/Canvas/Javascript ...マウスで画像をdivに移動または回転させるにはどうすればよいですか?

move and rotate images into a div

...しかし、私は本当にそれを行う方法を知らない...あなたは私を助けることができますか?

多くのありがとうございます。

+0

ブラウザのサポートはどのようになっていますか? CSS3と新しいブラウザを使用している場合は、かなり簡単に移動できます。 –

+0

現時点では、私は可能な限り互換性を保つように努めています。 例:IE6 +でサポートされている["cropzoom"](http://code.google.com/p/cropzoom/)を使用しています。 – Zorkzyd

答えて

2

単純なことに、私はSVGを使用してCanvasを使用しません。

RaphaelはSVGの罰金ライブラリの一つです。このような単純な何かができる

キャンバスライブラリはFabricJSKineticJS

通常、私は図書館を提唱していないが、それだと、すべてのアプリは、それはあなたの時間の負荷を保存しますするつもりされています。

+0

SVGでの作業が面白くてもFabricJSは私の問題を解決するのに適しているようです(私はRaphaelのウェブサイトで何を望んでいるのかわかりません)。 FabricJSは、ブラウザ間の互換性も提供します(ただし、IEのバージョンは9を除く)。多分exCanvasでブラウザの互換性を高めることができますか?それでも、あなたの答えは非常にありがとう。 – Zorkzyd

+0

私は私のWebホスティングに連絡し、私はPythonのバージョンのためにFabricJSを使用することはできません... FabricJSのようなものは他にありますか? – Zorkzyd

0

だから、私は、これは本当に難しいだろう明確にしましょう。

あなたはキャンバスを使用する場合は、小規模なサーバーサイドスクリプトでPNGするためにそれをエクスポートすることができます。

は、このようなことを行っている他の人があり、Lucid Chartは周りのものを移動するためにDOM要素を使用し、キャンバスでそれらを描画します。彼らがどのように彼らが輸出しているのか分かりません。

ここでは、全部のためのキャンバスを使用している場合、あなたがそれを行うことができる方法について少しです。

// requires php5 
define('UPLOAD_DIR', 'images/'); 
$img = $_POST['img']; 
$img = str_replace('data:image/png;base64,', '', $img); 
$img = str_replace(' ', '+', $img); 
$data = base64_decode($img); 
$file = UPLOAD_DIR . uniqid() . '.png'; 
$success = file_put_contents($file, $data); 
print $success ? $file : 'Unable to save the file.'; 

(jQueryの使用)JS側で:PHP側では

:私はこの去年に関するブログ記事を書いたが、唯一のPHP側を含め
var c = document.getElementById("yourCanvas"); 
var png = canvas.toDataURL(); 
$.post("postimg.php", {img: png}, function() { 
    console.log("saved your thing"); 
}); 

http://j-query.blogspot.com/2011/02/save-base64-encoded-canvas-image-to-png.html

+0

あなたの答えは非常にありがとうJamundしかし私はサイモンの答えが私が探しているものに近い方法だと思う。 – Zorkzyd

0

もう1つの可能性は、svg-editプロジェクトです。必要なものが基本的な変換であればニーズに合わせて調整することもできます。

関連する問題