PDA

View Full Version : كار با پيكسل ها



zoz_zozm
شنبه 28 شهریور 1388, 06:19 صبح
اگه كسي درباره نحوهي كار با پيكسل ها و تابع هاي مربوط به اونها چيزي مي دونه لطفا كمك كنه (C++‎بورلند):متفکر:



سوال دوم:
مي خواستم ببينم ميشه تو C++‎ عكس رو از هارد خواند و به رم برد و با يه اشاره گر (كه نمي دونم از چه نوعي بايد باشه) پيكسل هاي اين عكس رو خوند و كد، رنگ مربوطشو تو يك ماتريس ريخت؟:لبخند:

tdkhakpur
شنبه 28 شهریور 1388, 20:47 عصر
میتوانید از TBitmap فایل را لود کرده و از پراپرتی Pixels برای دریافت پیکسلها استفاده کنید.

zoz_zozm
دوشنبه 30 شهریور 1388, 12:53 عصر
خيلي ممونون،
اگه ميشه با يه مثال ساده توضيح بدين!‏

پيشاپيش تشكر مي كنم.‏:چشمک:

Hamid_VB
دوشنبه 30 شهریور 1388, 14:22 عصر
سلام ، راستش من تا حالا ‎‎بورلند C++‎‎ رو ندیدم و باهاش برنامه ننوشتم.
ولی یه برنام با C++‎‎ Win32 در مورد این سوال شما قبلاً نوشتم که لینکشو پایین گذاشتم ، امیدوارم بدردتون بخوره...
http://barnamenevis.org/forum/showthread.php?t=122893

tdkhakpur
دوشنبه 30 شهریور 1388, 14:54 عصر
خيلي ممونون،
اگه ميشه با يه مثال ساده توضيح بدين!‏

پيشاپيش تشكر مي كنم.‏


void __fastcall TForm1::Button1Click(TObject *Sender)
{
Graphics::TBitmap *bmp;
HDC hdc;
int i,j;
bmp = new Graphics::TBitmap;
bmp->LoadFromFile("1.bmp");
hdc = GetDC( Panel1->Handle );
for(int j=0; j<bmp->Height; j++)
for(int i=0; i<bmp->Width; i++)
//اینجا میتوانید داده ها را به بافر هم انتقال بدید
SetPixel(hdc, i, j, bmp->Canvas->Pixels[i][j]);
ReleaseDC(Panel1->Handle, hdc);
delete bmp;
}

mortezamsp
چهارشنبه 01 مهر 1388, 21:10 عصر
با سلام.

من یه منبع عالی (انگلیسی) پیدا کردم حتما ببین.درباره فرمت های مختلف از جمله bmp هستش و در اون یه نمونه کد سی پلاس برای باز کردن bmp در توربو هستش.توصیه میکنم حتما ببین چون اطلاعات جالبی داره:

http://en.wikipedia.org/wiki/BMP_format

pswin.pooya
چهارشنبه 01 مهر 1388, 23:10 عصر
Open Source => همیشه راه نجاته:
کتابخونه devil رو داونلود کن. بعدش هر فرمتی رو که میخوای بخون، تغییر بده و دست آخر هم ذخیرش کن.