ASCII DXF ファイル形式は、AutoCAD 図面を ASCII テキスト形式で完全に表現し、他のプログラムで簡単に処理できます。さらに AutoCAD は、完全な DXF ファイルのバイナリ形式を作成したり読み込むことができます。また、他のバイナリ ファイル形式の入力も制限付きで受け入れることができます。
SAVE[保存]および SAVEAS[名前を付けて保存]コマンドの[バイナリ]オプションを使用して、バイナリ DXF ファイルを書き出すことができます。このようなファイルには、ASCII DXF ファイルに含まれる情報がすべて含まれますが、ファイルはよりコンパクトになり、ファイル サイズが約 25% 小さくなります。また AutoCAD で高速(約 5 倍)に読み込んだり書き込むことができます。ASCII DXF ファイルでは、ファイル サイズを小さくするために浮動小数点の精度を犠牲にしますが、バイナリ DXF ファイルでは、図面データ ベース内での精度がそのまま維持されます(バイナリ DXF ファイル形式を初めてサポートしたバージョンは、AutoCAD GX-III(Release 10)であるため、それより前のバージョンでバイナリ DXF ファイルを読み込むことはできません)。
バイナリ DXF ファイルは、次のような 22 バイトのヘッダで始まります。
AutoCAD Binary DXF<CR><LF><SUB><NULL>
データがバイナリ形式で表されることを除き、ASCII DXF ファイルと同様に、ヘッダの後にデータ ペア(グループ コード、値)が続きます。グループ コードは、2 バイト(前が最下位バイト)の整数値(AutoCAD Release 13 より前の DXF ファイルは 1 バイト)です。各グループコードの後には、割り当てられた値が続きます。割り当てられた値は、次のいずれかになります。
グループ コードに続くデータのタイプは、ASCII DXF ファイルのデコードで使用される規則と同じ規則により、グループ コードから決定されます。角度の度への変換および日付の分数表現(ユリウス日表現)への変換は、ASCII DXF ファイルと同様に、バイナリ ファイルに対しても行われます。コメント グループ 999 は、バイナリ DXF ファイルでは使用されません。
AutoCAD Release 13 より前の DXF ファイルでは、拡張データのグループ コードは、バイナリ DXF では、値 255 の 1 バイトで表され、その後に 2 バイトの整数値(前が最下位バイト)が続きます。この整数値は、実際のグループ コードで、その後に実際の値(グループ値)が続きます。また、拡張データの値は、通常の DXF データの値と同じ方法で表されます。
そのため、AutoCAD Release 13 より前の DXF ファイルでは、たとえば拡張データの長整数グループでは次の値が現れます。値はそれぞれ、1、2、4 バイトです。
255Escape group code1071True group code999999Value for the 1071 group code
SAVEAS コマンドは、ASCII DXF ファイルと同じファイル拡張子(.dxf)でバイナリ DXF ファイルを書き出します。OPEN[開く]コマンドと INSERT[ブロック挿入]コマンドは、ヘッダ文字列によって、バイナリ ファイルであることを自動的に認識します。バイナリ ファイルであることを明示する必要はありません。
OPEN コマンドや INSERT コマンドでバイナリ DXF ファイルを読み込んでいるときにエラーが発生すると、AutoCAD ベースのプログラムによってファイル内のエラーが検出されたバイト アドレスが表示されます。