빠른 시작

빠른 시작

이 페이지에서는 가장 작은 동작 예제를 단계별로 안내합니다: 파일의 포맷과 헤더 속성을 검사하고, 라이브러리가 오류를 발생시키는 대신 손상된 파일을 어떻게 처리하는지 확인합니다.


파일 검사

ImageProbe은(는) 단일 정적 진입점입니다. ProbeFile은(는) 파일 헤더의 최소 부분만 읽어 ImageInfo 결과를 채웁니다 — 픽셀 데이터는 절대 디코딩하지 않습니다:

using Aspose.Imaging.Foss;

var info = ImageProbe.ProbeFile("photo.jpg");
Console.WriteLine($"{info.Format}: {info.Width}x{info.Height}, {info.BitDepth}-bit");

ImageInfo은(는) Format, Width, Height, BitDepth, 및 FrameCount를 노출합니다 — 해당 데이터가 실제로 감지된 포맷에 포함된 경우에만 채워집니다.


스트림 또는 바이트 배열 검사

Probe은(는) Stream 또는 byte[]를 직접 받아들이며, DetectFormat은(는) 전체 헤더가 필요하지 않을 때 ImageFormat만 반환합니다:

using Aspose.Imaging.Foss;
using System.IO;

byte[] bytes = File.ReadAllBytes("photo.jpg");
var format = ImageProbe.DetectFormat(bytes);

using var stream = File.OpenRead("photo.jpg");
var info = ImageProbe.Probe(stream);

잘린 또는 잘못된 입력 처리

ImageProbe는 잘못되었거나 잘린 입력에 대해 예외를 발생시키지 않습니다. 예외를 발생시키는 대신, 읽어들인 필드가 무엇이든 부분적인 ImageInfo을 반환합니다 — 헤더의 포맷 마커가 인식되면 Format는 항상 설정되며, 파일의 나머지가 잘려 있더라도 마찬가지입니다:

using Aspose.Imaging.Foss;

byte[] truncated = fullGifBytes[..^2]; // last two bytes missing

var info = ImageProbe.Probe(truncated);
Console.WriteLine(info.Format);        // Gif — detected from the header alone

이로 인해 ImageProbe를 신뢰할 수 없거나 부분적으로 다운로드된 파일에 대해 매 호출마다 try/catch로 감싸지 않아도 안전하게 실행할 수 있습니다.


다음 단계

참조

 한국어