📚
OpenSeadragon(OSD)の`fitBounds`と`fitBoundsWithConstraints`の違い
(以下、ChatGPTによる回答です。参考になりましたら幸いです。)
OpenSeadragon(OSD)のfitBounds
とfitBoundsWithConstraints
の違いは、制約を適用するかどうかにあります。
OSDは高度なズーム機能とパニング機能を持つJavaScriptライブラリで、深くズーム可能な画像やコンテンツを扱う際に使われます。その中のfitBounds
とfitBoundsWithConstraints
は、ビューポート(表示領域)を特定の境界に合わせるメソッドです。
fitBounds(rectangle, immediately)
: ビューポートを指定した矩形に合わせます。immediately
パラメータがtrue
の場合、アニメーションなしで即座にビューポートをフィットさせます。false
の場合、アニメーションを伴ってビューポートをフィットさせます。
fitBoundsWithConstraints(rectangle, immediately)
: fitBounds
と同じ動作をしますが、ビューポートのズームとパンの制約を考慮します。つまり、指定した矩形にフィットさせる前に、最小ズームレベル、最大ズームレベル、画像のパン制約などを確認します。これにより、ユーザーが画像をズームやパンしても、設定した制約を超えることがありません。
つまり、主な違いはfitBoundsWithConstraints
がビューポートの制約を適用することで、その制約を超える動作を防ぎます。これは特に、ユーザーが画像をズームイン/ズームアウトしたり、画像をパン(スクロール)する際の振る舞いを制御するのに重要です。
Discussion