קובץ תמונה בc

techtest

New member
קובץ תמונה בc

שלום לכולם,

אני קורא קובץ תמונה ב c בעזרת הfile איך אני מוצא את אורך השורות והעמודות של הקובץ, כמו כן איך אני מכניס למערך דו ממדי את הפיקסלים של התמונה?

תודה..
 

BravoMan

Active member
תלוי איזה קובץ זה...

יש הרבה פורמטים של קבצי תמונה: bmp, png, jpg ועוד עשרות אחרים.
לכל פורמט יש מבנה קובץ פנימי משלו, כך שאם אינך משתמש בספריה ייעודית שיודעת לפענח את הקובץ, תצטרך ללמוד בעצמך את הפורמט, ולבצע פעולות קריאה בהתאם.
 

BravoMan

Active member
וודאי שזה ממש משנה!

אתה לא יכול לקרוא קובץ בלי לדעת איך הוא בנוי, ואתה לא יכול לדעת איך הקובץ בנוי בלי לדעת מה הסוג שלו.

בגדול, לקובץ BMP יש "כותרת" שמורכבת מ-2 מבנים ומתארת את תוכן הקובץ, כולל את ממדי התמונה לעורך ולרוחב.
ולאחר מכן יש את המידע של הפיקסלים.

אבל אפילו פורמט יחסית פשוט זה יכול להכיל דברים שונים, למשל הפיקסלים יכולים להיות בני 256 צבעים עם פלטה (מערך מידע על RGB), או יכולים להיות בני 16 סיביות RRRRRGGGGGBBBBB או 24 או אפילו 32 סיביות.

בקיצור, תתחיל לקרוא כאן וללמוד:
http://en.wikipedia.org/wiki/BMP_file_format
 

פרסאוס

New member
על הסבלנות

 
למעלה