私はこの数学の問題を抱えています。このようなものを得るには、式を知る必要があります。
50% of (x) = 150% of 70
100% of (x) = 100% of 70
150% of (x) = 50% of 70
200% of (x) = 25% of 70
...
簡単に思えますが、この小さな問題で立ち往生しています。(x)
は変数であり、この計算には関係ないことに注意してください。
詳細については、画像のオフセットを計算しています。オフセットは、サイズ変更に対して相対的である必要があります。以下に例を示します (幅テストは 1920px、元のオフセットは 70px):
50% of 1920 = 150% of 70 = 105
100% of 1920 = 100% of 70 = 70
150% of 1920 = 50% of 70 = 35
200% of 1920 = 25% of 70 = 17,5
...
最終的なコードは JavaScript です。
* 編集 *
実際、同期的に値を増やし、同時に別の値を減らす方法を理解する必要があります。
...
25% ==> 200%
50% ==> 150%
100% ==> 100%
150% ==> 50%
200% ==> 25%
...
レンダリングがあります(急いで申し訳ありません)
実際、私の計算では、「70」は定数です。画像が大きいほど (>100%)、オフセットを小さくする必要があります。これは反転した状況にも当てはまります (私の画像は 100% 未満で、オフセットを大きくする必要があります)。