Panduan Cepat

Panduan Cepat

Halaman ini menjelaskan contoh kerja terkecil: memeriksa sebuah file untuk format dan properti header-nya, lalu melihat bagaimana perpustakaan menangani file yang rusak alih-alih melempar.


Uji file

ImageProbe adalah satu-satunya titik masuk statis. ProbeFile membaca cukup header file untuk mengisi hasil ImageInfo — ia tidak pernah mendekode data piksel:

using Aspose.Imaging.Foss;

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

ImageInfo mengekspos Format, Width, Height, BitDepth, dan FrameCount — terisi hanya ketika format yang terdeteksi memang membawa data tersebut.


Uji aliran atau array byte

Probe menerima Stream atau byte[] secara langsung, dan DetectFormat mengembalikan hanya ImageFormat ketika Anda tidak memerlukan header lengkap:

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);

Menangani input yang terpotong atau rusak

ImageProbe tidak pernah melempar pada input yang rusak atau terpotong. Alih-alih memunculkan pengecualian, ia mengembalikan ImageInfo parsial dengan bidang apa pun yang berhasil dibacanya — Format selalu diatur ketika penanda format header dikenali, bahkan jika sisa file terpotong:

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

Ini membuat ImageProbe aman dijalankan terhadap file yang tidak terpercaya atau yang diunduh sebagian tanpa harus membungkus setiap pemanggilan dalam try/catch.


Langkah Selanjutnya

Lihat Juga

 Bahasa Indonesia