Html2canvas: 回転画像を保存するにはどうすればよいですか?

作成日 2013年05月10日  ·  14コメント  ·  ソース: niklasvh/html2canvas

皆さんこんにちは!
質問があります。画像を保存して変換できますか:rotate(23deg); ?
どうもありがとう

Feature

最も参考になるコメント

CSS変換でdivを保存するにはどうすればよいですか:パースペクティブ?

全てのコメント14件

CSS変換はまだサポートされていません。

では、base64で画像を回転させることはできますか?

変換cssが機能していません。 任意の解決策???

@arindammこれに対する唯一の迅速な解決策は、「CSS」を「canvas」に置き換えることです。
キャンバス上の画像またはテキストを取得して回転させます(これはライブラリ「html2canvas」の外部で実行する必要があり、関数を呼び出す前に実行する必要があります)。

私のアプリケーションでは不可能です。 オンラインのストーリーブックを作ります。 そこでユーザーは、必要な数の画像とテキストを配置できます。 また、これらのオブジェクトを拡大縮小および回転することもできます。 私はこれらにDIVタグを使用しています。 div要素のデータを使用してキャンバスを作成するにはどうすればよいですか? 提案してもらえますか?

@arindamm画像を保存するときに言った通りでしたが、
すべての要素と「window.getComputedStyle」(またはjquery)を使用して、「回転」があったかどうかを検出できます。
オブジェクトのスタイルで「回転」する場合は、「回転」の値とオブジェクト内のテキスト(または画像)を取得し、「キャンバス」への影響をシミュレートします。

 var canvas = document.getElementById( 'myCanvas');
 var context = canvas.getContext( '2d');
 var rectWidth = 150;
 var rectHeight = 75;
 //コンテキストをキャンバスの中心に変換します
 context.translate(canvas.width / 2、canvas.height / 2);
 //時計回りに45度回転します
 context.rotate(Math.PI / 4);
 context.fillStyle = '青';
 context.fillRect(rectWidth / -2、rectHeight / -2、rectWidth、rectHeight);

リンク:
https://developer.mozilla.org/en-US/docs/DOM/window.getComputedStyle
http://api.jquery.com/css/(Jqueryでcssを取得)
http://www.html5canvastutorials.com/advanced/html5-canvas-transform-rotate-tutorial/(canvas + javascriptで回転)

ノート:
すぐに解決できる解決策はありませんが、おそらくこれらのリンクとコードを使用して、ケースの代替案を作成できます。
もう1つのアイデアは、作業を行うブラウザーごとにプラグインを作成することです。

クロム:
chrome.tabs.captureVisibleTab(integer windowId, object options, function callback)
リンク: http ://developer.chrome.com/extensions/tabs.html

Firefox: void drawWindow( in nsIDOMWindow window, in float x, in float y, in float w, in float h, in DOMString bgColor, in unsigned long flags [optional]);
リンク: https ://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D?redirectlocale = en-US&redirectslug = DOM%2FCanvasRenderingContext2D#drawWindow()

お役に立てば幸いです。

同じトピックに他の複数の問題があるため、これを閉じます。

画像をblobとして埋め込むと、回転が実際に機能することに注意してください...

さらに奇妙なことに、blobがなくても機能します。 数週間前に入手した私のファイルには、0.4.1であると記載されています。 自分で構築したり、バウアーを介してインストールしたりすると、機能しませんでした。 残念ながら、私はただ遊んでいたので、どこでそれを取ったのか覚えていません...

0.4.1を使用してチェックボックスをオンにすると、コンテンツdivがダウンします
誰か助けてくれませんか。

ここに記載されている回避策を実行できます。
http://www.jjoe64.com/2015/10/html2canvas-and-css-transform-rotate.html

リンク@ jjoe64に感謝しますが、html2canvasには意味がありません。

html2canvasは、キャンバス内のDOM要素(またはフルページ)をレンダリング(再描画)するためのライブラリであり、レンダリングキャンバスタグはありません。

ソリューションは、回転する1つの要素に対してのみ機能します。

はい、これは完璧に機能するソリューションではありませんが、回転したテキストや画像をレンダリングする必要がある場合は、問題の_回避策_です。 そして、このユースケースでは、それを使用したプロジェクトで完全に機能します。

CSS変換でdivを保存するにはどうすればよいですか:パースペクティブ?

このページは役に立ちましたか?
0 / 5 - 0 評価