התחלה מהירה

התחלה מהירה

דף זה מוביל דרך הדוגמה הקטנה ביותר העובדת: בדיקה של קובץ כדי לזהות את פורמטו ותכונות הכותרת, ולאחר מכן לראות כיצד הספרייה מתמודדת עם קובץ פגום במקום לזרוק שגיאה.


בדיקת קובץ

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.


הצעדים הבאים

ראה גם

 עברית