問題タブ [camanjs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
964 参照

javascript - CamanJS によって変更された KineticJS キャンバス

KineticJS で作成したキャンバスにCamanJSフィルターを適用しようとしています。できます:

CamanJS フィルターを適用した後、キャンバスで sth を実行しようとしています (たとえば、レイヤーをドラッグして移動するか、レイヤーをクリックするだけです) が、キャンバスは元の状態に戻ります (CamanJS フィルターを適用する前)。問題は、KineticJS に cache(?) を更新するように「指示」する方法、または新しいキャンバス データを保持するために stage.draw() のように実行する方法です。

これがjsfiddleです(「フィルターを適用」をクリックし、処理が完了したら、星をドラッグしてみてください)。

ところで: 処理が遅いのはなぜですか?

前もって感謝します。

0 投票する
1 に答える
257 参照

javascript - CamanJS プラグイン用の関数を作成する

私が呼び出すことができる関数を作成する機会はありますか?

ドキュメント準備完了関数に次の行を入れている場合、動作します:

しかし、私がこれをしている場合、私は呼び出すことができません。だから私はこれを試しました:

だから私はこれを icancall(); で呼び出すことができると思った。しかし、何も起こりませんでした。私は何を間違っていますか?私がしたいこと: ボタンのクリックで Caman 関数を実行します。

あなたが私を助けてくれることを願っています!

0 投票する
1 に答える
1095 参照

javascript - camanjsとrotateプラグインが正しく動作しない

ローテーションプラグインをcamanjsでうまく機能させた人はいますか? 私は、cofee を使用して camanjs をコンパイルし、追加のプラグインを含めました。その一つが回転です。回転プラグインは次のとおりです

プラス

html

JavaScript

ただし、90、270 -90、または 180 -180 以外の角度で回転すると、イメージが端で「食い尽くされる」ため、結果は望ましくありません。

元の画像 回転した画像

面白いことに、元に戻すと(回転した画像の明るさを複数回変更したいとしましょう)、元の画像がキャンバスに表示されますが、歪んでいます

ここに画像の説明を入力

そして 3 つ目の問題は、画像を 90 度回転すると、すべてがうまく機能し、画像が回転して元の位置 (左側) に留まることです。ただし、45 度の回転を行うと、キャンバスのサイズが再調整されず、画像が中央にとどまります。これは修正できますか?誰かがそれを正しく動作させましたか? 別のライブラリをお勧めしますか?回転機能が必要です。

0 投票する
0 に答える
332 参照

javascript - CamanJS 外部コールバック関数

画像がロードされたら CamanJS ライブラリのコールバックをチェックして、caman オブジェクトの準備ができたら caman 関数を呼び出す方法はありますか?

すなわち

適用したいトリミング関数とサイズ変更関数は、Caman イニシャライザーで呼び出された場合に無名関数コールバックのスコープ内で表示されない変数を使用しているため、コールバックを外部にする必要があります。

0 投票する
1 に答える
1374 参照

javascript - CamanJS の復元と回転の修正

CamanJS で回転プラグインを使用する場合、変更を元に戻そうとすると問題が発生します。Caman は、画像をトリミングまたはサイズ変更するときに適切に機能する方法でのみ実装されますが、回転するときはそうではありません. 元に戻して画像を回転すると、キャンバスが回転してサイズが変更されたことを考慮していないため、画像が歪んでリロードされます。また、キャンバスの imageData.data も異なります。それで、彼がサイズ変更をどのように実装したかを見て、私はそれを修正したと思います。基本的に私がしたこと(そして彼もそうです)は次のとおりです。

  1. 初期状態でキャンバスを作成する
  2. 彼の pixelData を initialState から更新します
  3. 新しいキャンバスを作成する
  4. 最初の画像で彼を回転させます
  5. ImageData を取得して再レンダリングする

だから私が追加したもの。新しいキャンバスを回転するときに正しい imageData を取得できるように、画像が回転した角度を知る必要がありました (ステップ 4)。

また、コンストラクターに新しいブール値を追加して、キャンバスが回転したかどうかを教えてくれました

ローテーションされたプラグインで:

オリジナルのVisiblePixels プロトタイプでは:

また、リセット プロトタイプ関数にいくつかのリセットを追加する必要があります。基本的に角度をリセットして回転

以上です。

私はそれを使用し、これまでのところ動作します。どう思いますか?お役に立てば幸いです

0 投票する
2 に答える
1534 参照

javascript - CamanJS を使用してキャンバスを完全にクリアする方法

CamanJS を使用して、フィルター付きの写真編集アプリを作成しています。私は完全に機能していますが、ユーザーが画像をアップロードした後、フィルターを適用するとすぐに別の画像をアップロードするプロセスを経て、キャンバスを以前にアップロードした画像に戻します。revert() 関数を使用していますが、新しくアップロードした画像にキャンバスを再割り当てしていますが、それでも最初の画像に戻ります。だから私の質問は、canvas/camanJS revert() が前の画像に戻らないポイントまでメモリを完全にクリアする方法はありますか?

私のフィルターの1つ:

0 投票する
1 に答える
525 参照

jquery - JQuery スライダーが camanJS プラグインで正しく動作しない

jquery スライダーを使用して画像のコントラストを操作したいのですが、jquery スライダーがトリガーされると、画像はスライダーの範囲に応じて黒、白、グレー、ダーク グレー、ライト グレーなどに変わります。

camanJS プラグイン