Panzoom: 機能:パン制限またはパディング制限を設定する機能

作成日 2020年06月23日  ·  4コメント  ·  ソース: timmywil/panzoom

この機能はどのような問題を解決しますか?

希望するソリューションを説明してください
パンされるオブジェクトにパン制限を設定する機能
NS:
borderRatioVertical = {0.8}
borderRatioHorizo​​ntal = {0.8}

検討した代替案を説明してください
contain: 'inside'値も同様のスタイルですが、パディング率の制限を維持しながらズームレベルを切り替えることができる必要があります

feature votes needed

最も参考になるコメント

早く返事をくれてありがとう。

たぶん私はcontain: inside完全に理解していません。 私がその実装を理解している限り、panzoomノードは親のrectボックスを超えてズームできなくなりますが、ユーザーがズームインできるようにしたいのですが、 contain: insideは私のオブジェクトにズームインを許可していませんビューポートを超えてズームします。

私のユースケース:解像度の高い履歴マップがあります。ユーザーがパンできるようにしたいのですが、オブジェクト全体を表示するには大きすぎますが、ユーザーが押しすぎて「マップを失う」ことは望ましくありません。片側に、 contain: outsideように聞こえますが、完全なズームコントロール、完全にズームアウトするが、ズームインしてさらに探索することを望んでいます。

問題は、 insideoutside両方に出くわす制限だと思います

  • insideは、画像がビューポートに収まるほど小さいことを前提としており、そうでない場合は奇妙な効果があります
  • outsideは、画像が少なくともビューポート全体を占める必要があることを前提としています

ここで、画像をズームおよびパンできるcontain: 'bounds'を想像できます。画像がビューポートよりも大きく、エッジまたはコーナーに到達すると、それぞれのエッジにパンバックします。

全てのコメント4件

問題を開いていただきありがとうございます。 機能を誤解している場合は許してください。ただし、ラッパー要素を追加してcontain: 'inside'を使用しても、これを実現できません

早く返事をくれてありがとう。

たぶん私はcontain: inside完全に理解していません。 私がその実装を理解している限り、panzoomノードは親のrectボックスを超えてズームできなくなりますが、ユーザーがズームインできるようにしたいのですが、 contain: insideは私のオブジェクトにズームインを許可していませんビューポートを超えてズームします。

私のユースケース:解像度の高い履歴マップがあります。ユーザーがパンできるようにしたいのですが、オブジェクト全体を表示するには大きすぎますが、ユーザーが押しすぎて「マップを失う」ことは望ましくありません。片側に、 contain: outsideように聞こえますが、完全なズームコントロール、完全にズームアウトするが、ズームインしてさらに探索することを望んでいます。

問題は、 insideoutside両方に出くわす制限だと思います

  • insideは、画像がビューポートに収まるほど小さいことを前提としており、そうでない場合は奇妙な効果があります
  • outsideは、画像が少なくともビューポート全体を占める必要があることを前提としています

ここで、画像をズームおよびパンできるcontain: 'bounds'を想像できます。画像がビューポートよりも大きく、エッジまたはコーナーに到達すると、それぞれのエッジにパンバックします。

これは独特の動作のように聞こえますが、ライブラリに組み込む方法がわかりません。 panzoomzoomイベントにバインドし、境界に達したときにcontainオプションを「outside」に変更できると思います。 以前は、コンテナに対する要素のサイズに応じてinsideoutsideを交互に使用する、 contain 「自動」オプションがありました。 コンテナよりも小さい場合は'inside'に設定され、大きい場合は'outside'ます。 これにより、画像はズーム可能でありながら常に表示されます。 いずれにせよ、私は今のところこれを投票ラベルに残しておきます。

過去2日間に切り替えること、そのアイデアに遭遇auctallyアイブ以上@timmywil insideoutside 、それは行くから期待されるようにない仕事、と思われる{contain: outside}{contain: inside}は画像をある位置にロックしているようで、 zoomIn()zoomOutは包含設定に関連付けられているようです。そのため、 zoomOutトリガーすることすらできません。自分でトリガーしない限り。 見落としている設定があるかどうか教えてください。

contain: autoと言う言葉がたくさんあるので、まさに私が探しているもののようです。

自動機能への投票がある場合は、idが喜んでサポートします:)

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