2016-04-01 16 views
-1

私は200Kbのjpgを持っていて、それをbase64文字列に変換したいと思います。画像サイズとbase64文字列変換の長さの比はどのくらいですか?

このbase64文字列の長さはどのくらいですか?

理由は私は最大長の文字列だけ65000文字を許可する "コンテナ"でbase64文字列としてそのイメージを格納するので、私が求めている理由です。

私はChromeのコンソールを使って自分のために見つけることを試みたが、ブラウザは、すぐに私は変数とDOに割り当てるよう、原因base64で生成された文字列の長さまで凍結保持します

x = 'base64.....'; // ridiculously long string 
x.length; 
+0

200kbは200000の「文字」で、65000の3倍以上です。常識的には、base64の表現は元のファイルの3倍にはならない可能性があります。それはまさに世界最高の圧縮アルゴリズムであり、我々はそれをすべてのものに使うだろう。 – JJJ

+1

ビットがどのようにパックされているかによって、base64エンコーディングは元のサイズの約4/3になります。したがって、200Kbのjpgは、base64でエンコードされた形式で約266Kbになります。 –

+1

この記事を読むhttp://stackoverflow.com/questions/4715415/base64-what-is-the-worst-possible-increase-in-space-usage and this http://stackoverflow.com/questions/11402329/base64-コード化された画像のサイズ – Lewis

答えて

1

すでにコメントに記載されているように、データがどのようにパックされているかに応じて正確な数値を与える方法はありません。ただし、ソースファイルよりも大きくなります。球場の図は約270,000文字です。

これをチェックする簡単な方法は、文字列のおおよそのサイズは(起きる膨張による元のサイズの135パーセント応じられるようhttps://www.base64-image.de/

+0

パーフェクト、それは私がエミールを知るために必要なすべてです!私はその比率だけに興味がありました。コメントがどのようにして常識の概念を獲得したのか、その知識が獲得した知識のコンセプトと絡み合いました。 –

1

などのオンライン変換サービスにいくつかの画像をアップロードすることです私のNetBSDのuuencodeのマンページへ)。 nバイトをエンコードするには、4 * ceil(n/3)バイトと追加の改行が必要です。

関連する問題