3

画像の base64 文字列を受け取り、それを HTML ページのソースとして使用します。次に、img は div の子です。画像のサイズによってdivのサイズを自動的に変更したい。javascript (... = element.style.height) を使用して画像の寸法を取得しようとしましたが、うまくいきませんでした (画像の非同期読み込みが原因だと思います)。画像のサイズを事前に取得し、親 div のサイズを手動で計算することは可能だと思います。

完全にデコードせずにbase64文字列から画像の寸法を抽出することは何とか可能ですか?

EDITED onload メソッドを使用して、親 div のサイズを変更しました。

4

1 に答える 1

5

それは画像フォーマットに依存します。

たとえば、PNGでは非常に簡単です。最初の32個のbase64文字を24バイトでデコードします。位置1〜3がASCII文字列「PNG」で構成されていることを確認してから、位置16〜19および20〜23の幅と高さを読み取ります。 //www.libpng.org/pub/png/spec/1.2/PNG-Structure.html

于 2012-04-23T14:00:17.277 に答える