それで、まさにそれを行うように見えるスクリプトを見つけました<g>が、変換マトリックスを適用することにより、svgコンテンツ全体をラップするaをズームします(ただし、スニッフィングのためにOperaではズームしません)。すべての要素を a でラップする<g>ことはオプションではありません。これは、画像ビューアーを作成していて、さまざまなファイルが読み込まれる可能性があるためです。
transform="matrix(...)"ルートに設定 して<svg>も効果はありません。currentScaleオンに設定すると<svg>、画像がズームされますが、マウスの位置や画像の中心からではなく、左上隅からズームされます。<svg>また、要素全体をドラッグすることは不可能に見えるため、パン機能も機能しません。
属性を操作するviewBoxことは役に立ちますが、必要な値を理解するのは非常に困難です。
では、そのようなコンテキストでズームとパンを行う方法を考えることができますか?
デモはこちらからダウンロードできます。Opera がコンピュータにインストールされている必要があります。