2017-10-19 9 views
0

ここには、これを行うためにターミナルを使用しています。 「GIF89a2017」と私はファイルを実行する際に、Ubuntuで拡張子が.gifのプレーンテキスト

Here'sものrare.gif として保存します。nanoなどのテキストエディタでは、私がコンテンツをプレーンテキストファイルを作成しますrare.gif: rare.gifそれは私にこの出力できますGIF画像データ、バージョン89A、12338 X 14129をし、それはそれは12338 X 14129、それはだの解像度を持つGIF画像であることを示しています私が理解していないものその決議はどこから来たのですか?

もう一つは、私は拡張子が本当にそれは、例えば、私は .gifメモを取るときとに変換し、が.exeのそれはまだGIF画像として認識されるファイルの種類を決めていなかったと思っていますファイルコマンドを使用します。私はGIF拡張子で作成されているので、GIFイメージとして認識されているという問題を推測しますが、理由を知りたいのですが。

ありがとうございました!

答えて

1

この解像度はどこから来ますか?

あなたがファイルに入れた(偽の)GIF89ヘッダーから来ています。 "GIF89a"に続く4バイトは、幅と高さを定義します。それぞれは16ビットの符号なし整数として格納されます。あなたがそこに置か文字 - - 2017があると解釈されている:私はつもり推測だ

32 30 ("20") -- 0x3032 = 12338 
31 37 ("17") -- 0x3731 = 14129 

そのそれはGIFの拡張子で作成されたので、私はそれがGIF画像として認識されていな問題で私は理由を知りたいのですが。

いいえ、fileは、内線番号を表示しません。これは、ファイルが準正当なGIFヘッダーを持っていたためです。ヘッダーを「GIF89a」で始まらないものに変更した場合、GIFとして認識されなくなります。

+0

これはいいですが、申し訳ありません。私はちょうど始まっています。20から32 30へ、そして17から31 37への変換の仕組みを本当に理解できませんでした。しかし、私はそれがどのように行われていないと確信しています。あなたがしたくない場合は、私にすべてを説明してもらうつもりはありませんが、私はどこからでも私がそれを学ぶことができます。とにかくありがとう! –

関連する問題