> This page is for 플랫폼, version 레거시.
> For other versions, use one of these documentation indexes:
> - V4 (default): https://next.developer.frame.io/platform/v4/llms.txt
> - V4 실험적: https://next.developer.frame.io/platform/v4-experimental/llms.txt
> - 레거시: https://next.developer.frame.io/platform/v2/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://next.developer.frame.io/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://next.developer.frame.io/_mcp/server.

# 주석 작업

# 개요

Frame.io의 주석은 색상, 좌표 및 크기가 포함된 직렬화된 그리기 오브젝트의 JSON blob으로 표현됩니다. blob에서는 바깥쪽 경계 쌍을 제외한 모든 따옴표가 슬래시로 이스케이프 처리됩니다(예: `\&quot;key\&quot;:\&quot;value\&quot;`). **arrow**, **rect**, **line**의 세 가지 기본 도형과 자유형 그리기가 있습니다. 자유형 그리기는 이 가이드의 범위를 벗어나지만 직렬화된 좌표 데이터의 동일한 기본 원칙을 따릅니다.

## 좌표계




모든 도형은 좌측 상단이 원점인 데카르트 좌표계에 배치되며, 각 축의 배율은 0에서 1 사이입니다.

<img alt="coordinate_plane.png" src="/_fern-img/099478340a4f8604fd4389c5d431ec9e9321f509f2d6055b0c92dd62e4e36147.webp" />

## 기본 도형 데이터




모든 도형은 좌표와 스타일 데이터의 조합을 통해 위 평면에 배치됩니다. 각 도형은 몇 가지 공통 속성을 공유하지만, 좌표계를 다루는 방식은 조금씩 다릅니다.





거리/너비/높이에 대한 모든 속성은 주 좌표 눈금과 동일한 0~1 배율을 사용하지만, 일반적으로는 해당 도형의 원점을 기준으로 측정됩니다.

즉, 비디오가 640x480 뷰포트에 표시되는 경우 `x=1`은 해당 컨텍스트에서 절대적인 640px와 같습니다. 이를 통해 주석은 화면 크기, 해상도 및 컨텍스트가 변경되더라도 상대적인 위치를 유지하면서 매끄럽게 확장 또는 축소될 수 있습니다. **참고**: *rect*의 원점은 그리기 원점과 관계없이 항상 도형의 좌측 상단 모서리입니다.

### 공통 속성




| 특성 | 설명 |
| ---------- | ---------- |
| `tool` | *arrow*, *rect*, 또는 *line*. 어떤 도형이 생성되는지 나타냅니다. |
| `color` | 해당 도형의 6자리 16진수 색상 코드입니다. |
| `size` | 도형 선의 픽셀 크기입니다. 화살표의 경우, 선의 끝부분 너비는 프로그램적으로 결정되므로 이 값은 선의 시작 부분에만 적용됩니다. |




### 화살표




| 특성 | 설명 |
|:--------|:----------|
| `x` | 화살표 원점의 x 좌표. |
| `y` | 화살표 원점의 y 좌표. |
| `w` | 화살표 원점을 기준으로 시작부터 끝까지 화살표의 y축 위치 차이. |
| `h` | 화살표 원점을 기준으로 시작부터 끝까지 화살표의 x축 위치 차이. |




### 직사각형




| 특성 | 설명 |
|:--------|:----------|
| `x` | 직사각형 좌측 상단 모서리의 x 좌표. |
| `y` | 직사각형 좌측 상단 모서리의 y 좌표. |
| `w` | 좌측 상단 직사각형 원점을 기준으로 한 직사각형의 너비. |
| `h` | 좌측 상단 직사각형 원점을 기준으로 한 직사각형의 높이. |
| `ix` | 직사각형의 x 도면 원점. (필수 아님). |
| `iy` | 직사각형의 y 도면 원점. (필수 아님). |
| `radius` | 직사각형 모서리의 둥근 반경. 반드시 양수여야 합니다. 150을 초과하는 값은 시각적으로 구별되지 않습니다. |




### 선




| 특성 | 설명 |
|:--------|:----------|
| `x1` | 선 원점의 x 좌표. |
| `y1` | 선 원점의 y 좌표. |
| `x2` | 선 종점(끝점)의 x 좌표. 이미지 평면의 절대값. |
| `y2` | 선 종점의 y 좌표. 이미지 평면의 절대값. |




## 간단한 예시: 좌표 평면

<img alt="plane-example.png" src="/_fern-img/99384da1b5af9a10636927f13840b9554fa518600b181af4f71f094dab50861c.webp" />

```serialized
{"annotation": "[{\"tool\":\"line\",\"color\":\"#E74A3C\",\"size\":3,\"x1\":0.0028530670470756064,\"y1\":0.012680297987002695,\"x2\":0.9964336661911555,\"y2\":0.9903312727849104},{\"tool\":\"line\",\"color\":\"#34A3DB\",\"size\":3,\"x1\":0.004992867332382311,\"y1\":0.98779521318751,\"x2\":0.9942938659058488,\"y2\":0.012680297987002695}]}
```





```json
{
    "annotation": [
        {
            "tool": "line",
            "color": "#E74A3C",
            "size": 3,
            "x1": 0.0028530670470756064,
            "y1": 0.012680297987002695,
            "x2": 0.9964336661911555,
            "y2": 0.9903312727849104
        },
        {
            "tool": "line",
            "color": "#34A3DB",
            "size": 3,
            "x1": 0.004992867332382311,
            "y1": 0.98779521318751,
            "x2": 0.9942938659058488,
            "y2": 0.012680297987002695
        }
    ]
}
```





### 분류

<img alt="blue-plane.png" src="/_fern-img/ced74a7487e5331393af727a794384e9e3294d7f048fda4c64e73b4ba32b4445.webp" />

```json
{
   "tool":"line",
   "color":"#34A3DB",
   "size":3,
   "x1":0.004992867332382311,
   "y1":0.98779521318751,
   "x2":0.9942938659058488,
   "y2":0.012680297987002695
}
```

<img alt="plane-example-red.png" src="/_fern-img/35bbbbcbe89e4262ec4e0fedf5e13d48baeceb10421fe48bcb854eb216a28676.webp" />

```json
{
   "tool":"line",
   "color":"#E74A3C",
   "size":3,
   "x1":0.0028530670470756064,
   "y1":0.012680297987002695,
   "x2":0.9964336661911555,
   "y2":0.9903312727849104
}
```





## 복잡한 예시: 다수의 직사각형

<img alt="lots-of-boxes.png" src="/_fern-img/9241b75e4785251c5c42b5b11306370df8d0510932e1537e20dbcde58977fea3.webp" />

```serialized
{"annotation": "[{\"tool\":\"rect\",\"color\":\"#34A3DB\",\"size\":3,\"x\":0.008426966292134831,\"y\":0.02663337494798169,\"w\":0.0702247191011236,\"h\":0.10986267166042447,\"ix\":0.008426966292134831,\"iy\":0.02663337494798169,\"radius\":8},{\"tool\":\"rect\",\"color\":\"#1ABCA1\",\"size\":3,\"x\":0.8932584269662921,\"y\":0.0449438202247191,\"w\":0.08895131086142327,\"h\":0.35122763212650854,\"ix\":0.8932584269662921,\"iy\":0.0449438202247191,\"radius\":8},{\"tool\":\"rect\",\"color\":\"#E67422\",\"size\":3,\"x\":0.023408239700374533,\"y\":0.7873491468997087,\"w\":0.1254681647940075,\"h\":0.2047440699126093,\"ix\":0.023408239700374533,\"iy\":0.7873491468997087,\"radius\":8},{\"tool\":\"rect\",\"color\":\"#E74A3C\",\"size\":3,\"x\":0.6919475655430711,\"y\":0.5409904286308781,\"w\":0.29868913857677903,\"h\":0.4427798585101955,\"ix\":0.6919475655430711,\"iy\":0.5409904286308781,\"radius\":8},{\"tool\":\"arrow\",\"color\":\"#E74A3C\",\"size\":3,\"x\":0.25374531835205993,\"y\":0.23137744486059092,\"w\":0.24250936329588013,\"h\":0}]}"
```





```json
{
    "annotation": [
        {
            "tool": "rect",
            "color": "#34A3DB",
            "size": 3,
            "x": 0.008426966292134831,
            "y": 0.02663337494798169,
            "w": 0.0702247191011236,
            "h": 0.10986267166042447,
            "ix": 0.008426966292134831,
            "iy": 0.02663337494798169,
            "radius": 8
        },
        {
            "tool": "rect",
            "color": "#1ABCA1",
            "size": 3,
            "x": 0.8932584269662921,
            "y": 0.0449438202247191,
            "w": 0.08895131086142327,
            "h": 0.35122763212650854,
            "ix": 0.8932584269662921,
            "iy": 0.0449438202247191,
            "radius": 8
        },
        {
            "tool": "rect",
            "color": "#E67422",
            "size": 3,
            "x": 0.023408239700374533,
            "y": 0.7873491468997087,
            "w": 0.1254681647940075,
            "h": 0.2047440699126093,
            "ix": 0.023408239700374533,
            "iy": 0.7873491468997087,
            "radius": 8
        },
        {
            "tool": "rect",
            "color": "#E74A3C",
            "size": 3,
            "x": 0.6919475655430711,
            "y": 0.5409904286308781,
            "w": 0.29868913857677903,
            "h": 0.4427798585101955,
            "ix": 0.6919475655430711,
            "iy": 0.5409904286308781,
            "radius": 8
        },
        {
            "tool": "arrow",
            "color": "#E74A3C",
            "size": 3,
            "x": 0.25374531835205993,
            "y": 0.23137744486059092,
            "w": 0.24250936329588013,
            "h": 0
        }
    ]
}
```





### 분류

이 모든 것을 염두에 두고, 주석 좌표계에 대한 보다 명확한 이해를 돕기 위해 위 이미지의 각 요소를 배치해 보는 것이 유용합니다. 이 예시에서 각 사각형의 `size` 및 `radius`는 Frame.io UI 기본값을 따릅니다.

#### 파란색 직사각형

<img alt="blue-box.png" src="/_fern-img/ccc803531559e559395c2811d2be436316bbce6249c89b4af0b366efcf6b4d27.webp" />

```json
{
   "tool":"rect",
   "color":"#34A3DB",
   "size":3,
   "x":0.008426966292134831,
   "y":0.02663337494798169,
   "w":0.0702247191011236,
   "h":0.10986267166042447,
   "ix":0.008426966292134831,
   "iy":0.02663337494798169,
   "radius":8
}
```





#### 녹색 직사각형

<img alt="box-green.png" src="/_fern-img/4ce987f7843bf36e865fe0ceb6ae0ebbfa383cf719018754070a489fb3e3f17a.webp" />

```json
{
   "tool":"rect",
   "color":"#1ABCA1",
   "size":3,
   "x":0.8932584269662921,
   "y":0.0449438202247191,
   "w":0.08895131086142327,
   "h":0.35122763212650854,
   "ix":0.8932584269662921,
   "iy":0.0449438202247191,
   "radius":8
}
```





#### 빨간색 직사각형

<img alt="red-box.png" src="/_fern-img/61638bc1073613b5456b11ac4ce287447c3aaade152c0e6faf7699d995b11b31.webp" />

```json
{
   "tool":"rect",
   "color":"#E74A3C",
   "size":3,
   "x":0.6919475655430711,
   "y":0.5409904286308781,
   "w":0.29868913857677903,
   "h":0.4427798585101955,
   "ix":0.6919475655430711,
   "iy":0.5409904286308781,
   "radius":8
}
```





#### 주황색 직사각형

<img alt="orange-box.png" src="/_fern-img/b7a8f7c7feb18d0439ef14f7fe71441d3cada3f551dda44c9e69ef9c8b34a8d4.webp" />

```json
{
   "tool":"rect",
   "color":"#E67422",
   "size":3,
   "x":0.023408239700374533,
   "y":0.7873491468997087,
   "w":0.1254681647940075,
   "h":0.2047440699126093,
   "ix":0.023408239700374533,
   "iy":0.7873491468997087,
   "radius":8
}
```





#### 빨간색 화살표

<img alt="red-arrow.png" src="/_fern-img/1f3e9db0880bf0bef5aa305de38471893b8ae9901226383441ff08c317087160.webp" />

```json
{
   "tool":"arrow",
   "color":"#E74A3C",
   "size":3,
   "x":0.25374531835205993,
   "y":0.23137744486059092,
   "w":0.24250936329588013,
   "h":0
}
```