자산 API 참조
Added in:
astro@3.0.0
Astro는 최적화된 이미지를 표시하기 위한 기본 컴포넌트와 도우미 함수를 제공합니다. 기능 및 사용 예시는 이미지 가이드를 참조하세요.
astro:assets
에서 가져오기
섹션 제목: astro:assets에서 가져오기<Image />
섹션 제목: <Image />Image 속성
섹션 제목: Image 속성<Image />
컴포넌트는 아래에 설명된 속성 외에도 HTML <img>
태그의 모든 속성을 허용합니다.
src (필수)
섹션 제목: src (필수)타입: ImageMetadata | string | Promise<{ default: ImageMetadata }>
이미지 파일의 src
값 형식은 이미지 파일의 위치에 따라 다릅니다.
-
src/
의 로컬 이미지 - 상대 파일 경로를 사용하여 이미지도 가져오거나 가져오기 별칭을 구성하고 사용해야 합니다. 그런 다음 가져오기 이름을src
값으로 사용합니다. -
public/
폴더의 이미지 - 이미지의 public 폴더에 상대적인 파일 경로 사용: -
원격 이미지 - 이미지의 전체 URL을 속성 값으로 사용합니다.
alt (필수)
섹션 제목: alt (필수)타입: string
이미지에 대한 설명 대체 텍스트 문자열을 제공하려면 필수 alt
속성을 사용하세요.
이미지가 단지 장식용인 경우 (즉, 페이지 이해에 도움이 되지 않는 경우) alt=""
를 설정하여 화면 판독기 및 기타 보조 기술이 이미지를 무시하도록 알립니다.
width 및 height (public/
의 이미지에 필요)
섹션 제목: width 및 height (public/의 이미지에 필요)타입: number | undefined
이러한 속성은 이미지에 사용할 크기를 정의합니다.
이미지를 원본 가로세로 비율로 사용하는 경우 width
및 height
는 선택사항입니다. 이러한 치수는 src/
에 있는 이미지 파일에서 자동으로 유추할 수 있습니다. 원격 이미지의 경우 <Image />
또는 <Picture />
컴포넌트의 inferSize
속성을 true
로 설정하거나 inferRemoteSize()
함수를 사용하세요.
그러나 Astro는 이러한 파일을 분석할 수 없으므로 public/
폴더에 저장된 이미지에는 이 두 속성이 모두 필요합니다.
densities
섹션 제목: densities타입: (number | `${number}x`)[] | undefined
astro@3.3.0
이미지에 대해 생성할 픽셀 밀도 목록입니다.
제공된 경우 이 값은 <img>
태그에 srcset
속성을 생성하는 데 사용됩니다. 이 값을 사용할 때 widths
값을 제공하지 마세요.
이미지 크기가 커지는 것을 방지하기 위해 원본 이미지보다 더 큰 너비와 동일한 밀도는 무시됩니다.
widths
섹션 제목: widths타입: number[] | undefined
astro@3.3.0
이미지에 대해 생성할 너비 목록입니다.
제공된 경우 이 값은 <img>
태그에 srcset
속성을 생성하는 데 사용됩니다. sizes
속성도 제공해야 합니다.
이 값을 사용할 때는 densities
값을 제공하지 마세요. 이 두 값 중 하나만 사용하여 srcset
을 생성할 수 있습니다.
이미지 크기가 커지는 것을 방지하기 위해 원본 이미지보다 큰 너비는 무시됩니다.
format
섹션 제목: format타입: ImageOutputFormat | undefined
선택적으로 사용할 이미지 파일 형식 출력을 명시할 수 있습니다.
기본적으로 <Image />
컴포넌트는 .webp
파일을 생성합니다.
quality
섹션 제목: quality타입: ImageQuality | undefined
quality
는 다음 중 하나일 수 있는 선택적 속성입니다.
- 형식 간 자동으로 표준화되는 사전 설정 (
low
,mid
,high
,max
)입니다. 0
부터100
까지의 숫자 (형식에 따라 다르게 해석됨)
inferSize
섹션 제목: inferSize타입: boolean
astro@4.4.0
원격 이미지의 원래 width
및 height
를 자동으로 설정할 수 있습니다.
기본적으로 이 값은 false
로 설정되어 있어 원격 이미지에 두 크기를 모두 수동으로 지정해야 합니다.
<Image />
컴포넌트에 inferSize
를 추가하거나 getImage()
에 inferSize: true
를 추가하여 가져올 때 이미지 콘텐츠에서 이러한 값을 추론합니다. 이는 원격 이미지의 크기를 모르거나 변경될 수 있는 경우에 유용합니다.
inferSize
는 승인되지 않은 도메인의 원격 이미지의 크기를 가져올 수 있지만 이미지 자체는 처리되지 않은 상태로 유지됩니다.
<Picture />
섹션 제목: <Picture />
Added in:
astro@3.3.0
다양한 형식 및/또는 크기로 반응형 이미지를 표시하려면 Astro의 <Picture />
컴포넌트를 사용하세요.
Picture 속성
섹션 제목: Picture 속성<Picture />
는 <Image />
컴포넌트의 모든 속성과 함께 다음을 허용합니다.
formats
섹션 제목: formats타입: ImageOutputFormat[]
<source>
태그에 사용할 이미지 형식의 배열입니다. 항목은 나열된 순서대로 <source>
요소로 추가되며, 이 순서에 따라 표시되는 형식이 결정됩니다. 최상의 성능을 얻으려면 가장 최신 형식 (예: webp
또는 avif
)을 먼저 나열하세요. 기본적으로 ['webp']
로 설정되어 있습니다.
fallbackFormat
섹션 제목: fallbackFormat타입: ImageOutputFormat
<img>
태그에 대한 대체 값으로 사용할 형식입니다. 정적 이미지의 기본값은 .png
(또는 이미지가 JPG인 경우 .jpg
), 애니메이션 이미지의 경우 .gif
, SVG 파일의 경우 .svg
입니다.
pictureAttributes
섹션 제목: pictureAttributes타입: HTMLAttributes<'picture'>
<picture>
태그에 추가될 속성의 객체입니다.
이 속성을 사용하여 외부 <picture>
요소 자체에 속성을 적용합니다. <Picture />
컴포넌트에 직접 적용된 속성은 이미지 변환에 사용되는 속성을 제외하고 내부 <img>
요소에 적용됩니다.
getImage()
섹션 제목: getImage()타입: (options: UnresolvedImageTransform) => Promise<GetImageResult>
getImage()
는 서버 전용 API에 의존하며 클라이언트에서 사용될 때 빌드를 중단합니다.
getImage()
함수는 HTML이 아닌 다른 곳 (예: API 경로)에서 사용할 이미지를 생성하기 위한 것입니다. 또한 사용자 정의 <Image />
컴포넌트를 만들 수도 있습니다.
getImage()
는 Image 컴포넌트와 동일한 속성을 가진 옵션 객체를 사용합니다 (alt
제외).
다음 타입을 가진 객체를 반환합니다.
inferRemoteSize()
섹션 제목: inferRemoteSize()타입: (url: string) => Promise<Omit<ImageMetadata, 'src' | 'fsPath'>>
astro@4.12.0
원격 이미지의 크기를 유추하는 함수입니다. 이 함수는 inferSize
프로퍼티를 전달하는 대신 사용할 수 있습니다.