DWF 파일이란?
DWF(Design Web Format)는 디자인 파일을 보거나 검토하거나 인쇄하기 위해 압축된 형식의 2D/3D 도면을 나타냅니다. 디자인 데이터의 일부로 그래픽과 텍스트를 포함하고 압축 형식으로 인해 파일 크기를 줄입니다. 파일 크기를 줄이면 풍부한 설계 데이터를 효율적으로 배포하고 전달할 수 있습니다. DWF는 수신자가 원본 도면을 만든 CAD 소프트웨어의 사용에 대해 알도록 요구하지 않습니다. DWF 파일 형식의 내용은 단순할 수 있으며 단일 시트만 포함하거나 글꼴, 색상 및 이미지가 있을 만큼 충분히 복잡할 수 있습니다.
간략한 역사
Autodesk는 1995년에 Netscape Navigation 플러그인인 WHIP의 일부로 DWF 파일 형식을 도입했습니다. 형식은 2D 전용 형식에서 시간이 지남에 따라 3D 콘텐츠를 포함하도록 진화했습니다. 많은 타사 응용 프로그램도 이 형식을 사용합니다.
DWF 파일 형식
DWF는 풍부한 엔지니어링 설계 데이터를 공유하기 위해 특별히 설계된 안전한 개방형 형식입니다. 이는 해당 설계 데이터를 생성하는 데 사용된 원래 응용 프로그램 소프트웨어, 하드웨어 및 운영 체제와 무관합니다. 이를 통해 CAD 응용 프로그램을 사용하지 않는 팀 구성원이 건물, GIS 또는 제품 설계를 보고 디지털 프로세스에 참여할 수 있습니다. DWF 파일 아카이브는 ZIP 압축으로 생성된 압축 아카이브에 함께 패키지된 여러 XML 및 바이너리 파일로 구성됩니다. DWF 파일 확장자의 이름을 ZIP으로 바꾸고 파일 내용을 볼 수 있습니다. DWF 패키지에는 2D 그래픽, 3D 그래픽, 패키지 및 섹션 메타데이터, 기타 리소스 파일과 같은 다양한 종류의 설계 데이터가 포함될 수 있습니다.
DWF 메타데이터 파일 – 메타데이터 및 구조(작성자, 제목, 생성 시간, 섹션 종속성, 섹션 순서, 리소스 파일 설명, 역할, MIME 유형 등) 및 섹션(페이지 정보, 디자인 메타데이터 등). 구조적 메타데이터는 논리적 개체(부품 또는 페이지 등을 나타내는 파일 모음)를 만드는 데 사용됩니다.
리소스 파일 – 패키지/섹션 메타데이터에서 참조되는 미디어 또는 기타 콘텐츠 파일이며 일반적으로 다양한 형식(ZGL, W2D, JPG, [PNG]의 디자인 데이터 프레젠테이션입니다. (/ko/image/png/), AVI, XML, TXT, DOC 등)
파일 형식 세부 정보
DWF 파일은 아래와 같이 세 가지 주요 섹션으로 구성됩니다.
- 파일 식별 헤더
- 파일 데이터 블록
- 파일 종료 예고편
파일 식별자 헤더
파일 식별자 헤더를 사용하면 응용프로그램에서 DWF 파일을 식별할 수 있습니다. 또한 파일 인코딩에 사용된 DWF 사양의 버전을 식별합니다. 다음과 같이 배열된 12바이트 헤더입니다.
바이트 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
문자 | ( | D | W | F | (공백) | V | 0 | 0 | . | 3 | 0 | ) |
이 표를 요약하면 다음과 같습니다.
- 헤더의 처음 6바이트는 항상 ASCII 문자 “(DWF V”)를 나타냅니다.
- 다음 5바이트는 버전 번호에 대한 정보를 포함합니다(예: 형식의 주 버전 및 부 버전 값과 함께 “00.30”).
DWF 파일을 만드는 응용 프로그램은 데이터를 적절하게 사용하기 위해 판독기 응용 프로그램이 지원해야 하는 가능한 가장 낮은 버전 번호를 지정해야 합니다.
파일 데이터 블록
파일 데이터 블록은 DWF 파일의 13번째 바이트에서 시작하며 다음 표와 같이 일련의 opcode 및 피연산자 쌍입니다.
필드 1 | 필드 2 | 필드 3 | 필드 4 | 필드 5 | 필드 5 |
---|---|---|---|---|---|
opcode | 피연산자 | opcode | 피연산자 | opcode | 피연산자 |
DWF 파일에는 읽을 수 있는 ASCII와 코드 바이너리 또는 이 두 가지가 혼합된 opcode-피연산자 쌍이 포함될 수 있습니다. 모든 DWF 연산에는 읽을 수 있는 ASCII 연산 코드/피연산자 형식이 있으며 대부분의 연산에는 코딩된 이진 연산 코드/피연산자 형식도 있습니다. Opcode는 200개 이상의 작업을 허용하는 단일 바이트입니다. 확장 ASCII 및 확장 바이너리는 예외적인 경우입니다. Opcode의 값은 일부 예외를 제외하고 0-255 범위일 수 있습니다. 두 가지 특수 유형의 opcode 확장 ASCII 및 확장 바이너리를 제외하고 파일 판독기는 피연산자 길이를 계산하는 방법을 알아야 합니다.
금지된 Opcodes
다음에 대한 ASCII 표현은 opcode로 사용할 수 없습니다.
다음 ASCII 표현은 opcode로 사용할 수 없습니다.
- 공백(0x20)
- 탭(0x09)
- 하이픈(0x2D)
- ASCII 숫자 0-9(0x30 - 0x39)
- 캐리지 리턴(0x0D)
- 줄바꿈(0x0A)
- 작은따옴표(0x27)
- 큰따옴표(0x22)
- 마침표(0x2E)
- 괄호(0x28 및 0x29)
- 중괄호(0x7B 및 0x7D)
- 대괄호(0x5B 및 0x5D)
- 백슬래시(0x5C)
파일 종료 예고편
DWF의 파일 종료 트레일러는 단순히 파일의 끝을 나타내는 특수 opcode입니다. 일부 응용 프로그램은 종료 opcode 다음에 비DWF 데이터를 저장할 수 있습니다. 예고편은 아래와 같습니다.
바이트 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---|---|---|---|---|---|---|---|---|---|---|
문자 | ( | E | n | d | 0 | f | D | W | F | ) |