Gyors kezdés

Gyors kezdés

Ez az oldal végigvezet a legkisebb működő példán: egy fájl formátumának és fejlécjellemzőinek felderítése, majd annak megtekintése, hogyan kezeli a könyvtár a sérült fájlt ahelyett, hogy kivételt dobna.


Fájl vizsgálata

ImageProbe az egyetlen statikus belépési pont. ProbeFile csak annyit olvas a fájl fejlécről, hogy egy ImageInfo eredményt töltsön fel – soha nem dekódolja a pixel adatokat:

using Aspose.Imaging.Foss;

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

ImageInfo elérhetővé teszi a Format, Width, Height, BitDepth és FrameCount elemeket – csak akkor töltődnek fel, ha a felismert formátum ténylegesen tartalmazza az adatokat.


Adatfolyam vagy bájt tömb vizsgálata

Probe közvetlenül elfogad egy Stream vagy egy byte[] elemet, és a DetectFormat csak a ImageFormat értéket adja vissza, ha nincs szükség a teljes fejlécre:

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

Rövidített vagy hibás bemenet kezelése

ImageProbe soha nem dob hibát hibás vagy rövidített bemenet esetén. Kivétel helyett részleges ImageInfo értéket ad vissza a beolvasott mezőkkel — Format mindig be van állítva, ha a fejléc formátumjelzője fel lett ismerve, még akkor is, ha a fájl többi része le van vágva:

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

Ezáltal a ImageProbe biztonságosan futtatható nem megbízható vagy részben letöltött fájlokon anélkül, hogy minden hívást try/catch blokkba kellene csomagolni.


Következő lépések

Lásd még:

 Magyar