DXF ファイルとは?中身の仕組み・DWG との違い・版と文字化けの見分け方
DXF(Drawing Interchange Format。Drawing Exchange Format とも呼ばれます)は、Autodesk が仕様を公開している CAD 図面の交換形式で、線・円・文字・画層(レイヤー)を「番号(グループコード)と値」の組で書き並べたファイルです。
なぜ開けないのか
- 画像でも PDF でもありません。DXF に入っているのは、線の端点の座標・円の中心と半径・文字の高さといった数値で、それを図面として描くプログラムが無いと何も表示されません(縮小画像を入れる欄も仕様にはありますが、入れるかどうかは任意です)。
- 同じ .dxf でも中身が 2 種類あります。ふつうは文字(ASCII)で書かれていますが、AutoCAD は同じ拡張子のままバイナリ形式の DXF も保存でき、文字形式しか読めないソフトではそちらが開けません。
- 日本語の書き方が版によって違います。2004 形式までは図面の中で宣言した文字コード(日本語ならふつう Shift_JIS)、2007 形式からは UTF-8 です。どちらか一方を決め打ちで読むソフトでは、もう一方の DXF の日本語が化けます。
- 版が読めない範囲にあることがあります。DXF は AutoCAD のリリースに合わせて版が変わり、読む側は対応する版を決めています。たとえば Inkscape の DXF の読み込みは「AutoCAD Release 13 以降」と書いています。
開き方
インストールせずにブラウザで見る(このサイト)
- 1 このサイトの DXF ビューアに .dxf を入れると、ページの中に図面が表示されます。ファイルは端末の中で読み、送信しません。
- 2 図面の上に、版(例: 「DXF 2018 (AC1032)」)と、読んだ文字コード(UTF-8・Shift_JIS など)が出ます。下の「版の見分け方」「日本語が文字化けする理由」と見比べると、ほかのソフトで化けた理由も分かります。
- 3 開けるのは文字形式の DXF だけで、バイナリ形式の DXF と DWG はそう知らせて止まります。線の太さは反映しません。見えている範囲を PNG で、パソコンなら図面全体を印刷・PDF で保存できます。
無料で開ける・直せるソフト
- 1 LibreCAD:無料のオープンソース(GPLv2)の 2 次元 CAD で、Windows・Mac・Linux 用があります。マニュアルによると DWG と DXF を読み、DXF・SVG・PDF などで保存できます。
- 2 Jw_cad:Windows 10・11 用の無料の 2 次元 CAD です。DXF の読み込みと書き出しができ、2010 形式の DXF の書き出し(と 2010 形式の一部の読み込み)は Version 10.01(2025 年 6 月)からです。
- 3 FreeCAD:Windows・Mac・Linux 用の無料のオープンソースの 3D モデラーで、DXF の読み書きにも対応しています。3D の設計のためのソフトなので、図面を見るだけならほかの方法が手軽です。
- 4 Inkscape:無料のベクター画像の編集ソフトで、DXF を読み込めます。読み込むときに文字コード(Shift JIS・UTF-8 など)を選ぶ欄があるので、日本語が化けたらもう一方を選んで開き直します。
Autodesk のビューアで見る
- 1 DWG TrueView:Autodesk の Windows 用の無料ビューアです。DWG と DXF を開き、画層の表示の切り替え・距離の計測・印刷(PDF への出力を含む)ができます。図面の編集はできませんが、付いている DWG Convert で別の版に保存し直せます。
- 2 Autodesk Viewer:ブラウザで使う無料のビューアで、対応形式に DXF が入っています。登録してファイルを Autodesk に上げる仕組みなので、このサイトのビューアと違い、ファイルが端末の外に出ます。
中身を 1 行ずつ見ると
文字形式の DXF は、メモ帳などのテキストエディタで開けます。2 行で 1 組になっていて、1 行目が番号(グループコード)、2 行目がその値です。「0」の次の「SECTION」で区切りが始まり、「2」の次の名前がその区切りの名前です。HEADER(図面の設定と版)・CLASSES・TABLES(画層・線種・文字スタイル)・BLOCKS(繰り返し使う部品の定義)・ENTITIES(線・円・文字などの図形そのもの)・OBJECTS と、任意の THUMBNAILIMAGE が順に並び、それぞれ「0」「ENDSEC」で閉じます。CLASSES・OBJECTS・THUMBNAILIMAGE は R13 以降の DXF だけにあり、R12 形式の DXF は HEADER・TABLES・BLOCKS・ENTITIES だけです。
版の見分け方(AC1009〜AC1032)
HEADER の「$ACADVER」の次の値が版です。Autodesk の一覧では AC1009 = R11・R12、AC1012 = R13、AC1014 = R14、AC1015 = 2000、AC1018 = 2004、AC1021 = 2007、AC1024 = 2010、AC1027 = 2013、AC1032 = 2018 です。Autodesk の 2025 年版の DXF リファレンスでも、一覧の最後は AC1032 です。このサイトのビューアは、この値とリリース名を図面の上に出します。
日本語が文字化けする理由
2004 形式(AC1018)までの DXF は、$DWGCODEPAGE に書かれた文字コードで書かれます。日本語なら ANSI_932(Windows の Shift_JIS)です。Autodesk のリファレンスによると、この値は図面を新しく作ったときのパソコンの設定が入り、その後は更新されません。2007 形式(AC1021)からは中身が UTF-8 になりましたが、$DWGCODEPAGE の欄は残っています。そこに ANSI_932 とあるのを信じて Shift_JIS で読むソフトでは新しい DXF が、UTF-8 と決めて読むソフトでは古い DXF が化けます。
バイナリ形式の DXF
AutoCAD の「名前を付けて保存」にはバイナリのオプションがあり、拡張子は .dxf のまま、バイナリ形式の DXF を書きます。先頭が「AutoCAD Binary DXF」という文字で始まり、文字形式より約 25% 小さく、座標の精度も落ちません。テキストエディタで開いて読めない記号ばかりなら、こちらです。このサイトのビューアでは開けないので、文字形式(ASCII)の DXF で保存し直してもらってください。