السلام عليكم :
هل من الممكن تكبير البكسل في عنصر الصورة وجعل البكسل ياخذ صورة bmp اثناء التكبير
السلام عليكم :
هل من الممكن تكبير البكسل في عنصر الصورة وجعل البكسل ياخذ صورة bmp اثناء التكبير
تم تعديل هذه المشاركة بواسطة محمد زياد الخياط في 26 يناير 2009 في 04:14
لا اله الا الله وحده لا شريك له
مرحباً أخي الكريم .
بالنسبة لتكبير شيء يسمى ( Pixel ) فهذا غير وارد لأنها عبارة عن ( نقطة ) نقطة ضوئية, يمكنك الإستعانة بـ Bitmap وعمل حلقة تكرارية تقرأ الـ Pixels من صورة ما ومن ثم تقوم برسم Rectangles للون الـ Pixel المقروءة على الـ Bitmap المنشئة, هذا مأراه ممكن .
مثال :
Dim Img [color= #b1b100;]As Bitmap [color= #339933;]= Image[color= #339933;].FromFile[color= #009900;]( [color= #0000ff;]"SomeFileName" [color= #009900;]) Dim Bmp [color= #b1b100;]As [color= #000000; font-weight: bold;]New Bitmap[color= #009900;]( Img[color= #339933;].Width[color= #339933;], Img[color= #339933;].Height [color= #009900;]) Dim X[color= #339933;], Y [color= #b1b100;]As Integer Dim MaxX[color= #339933;], MaxY [color= #b1b100;]As Integer Dim CColor [color= #b1b100;]As Color MaxX [color= #339933;]= CInt[color= #009900;]( Img[color= #339933;].Width [color= #339933;]/ [color= #cc66cc;]2[color= #009900;]) [color= #339933;]: MaxY [color= #339933;]= CInt[color= #009900;]( Img[color= #339933;].Height [color= #339933;]/[color= #cc66cc;]2 [color= #009900;]) Dim Rect [color= #b1b100;]As [color= #000000; font-weight: bold;]New Rectangle[color= #009900;]( [color= #cc66cc;]0[color= #339933;], [color= #cc66cc;]0[color= #339933;], [color= #cc66cc;]2[color= #339933;], [color= #cc66cc;]2 [color= #009900;]) Using G [color= #b1b100;]As Graphics [color= #339933;]= Graphics[color= #339933;].FromImage[color= #009900;]( Bmp [color= #009900;]) [color= #b1b100;]Do [color= #b1b100;]While Y [color= #339933;]< MaxY X [color= #339933;]= [color= #cc66cc;]0 [color= #b1b100;]Do [color= #b1b100;]While X [color= #339933;]< MaxX CColor [color= #339933;]= Img[color= #339933;].GetPixel[color= #009900;]( X[color= #339933;], Y [color= #009900;]) Rect[color= #339933;].Left [color= #339933;]= [color= #009900;](X [color= #339933;]*[color= #cc66cc;]2 [color= #009900;]) Rect[color= #339933;].Top [color= #339933;]= [color= #009900;](Y [color= #339933;]*[color= #cc66cc;]2 [color= #009900;]) G[color= #339933;].FillRectangle[color= #009900;]( [color= #000000; font-weight: bold;]New SolidBrush[color= #009900;]( CColor[color= #339933;], Rect [color= #009900;]) X [color= #339933;]+= [color= #cc66cc;]1 Loop Y [color= #339933;]+= [color= #cc66cc;]1 Loop [color= #990000;]End Using PictureBox1[color= #339933;].Image [color= #339933;]= Bmp
وإذا أردت رسمهم على شكل دوائر, فإستبدل FillRectangle بـ FillEllipse .
أو يمكنك أختصار هذا بـ :
Dim Img [color= #b1b100;]As Bitmap [color= #339933;]= Image[color= #339933;].FromFile[color= #009900;]( [color= #0000ff;]"SomeFileName" [color= #009900;]) Dim Bmp [color= #b1b100;]As [color= #000000; font-weight: bold;]New Bitmap[color= #009900;]( Img[color= #339933;].Width[color= #339933;], Img[color= #339933;].Height [color= #009900;]) Dim MaxX[color= #339933;], MaxY [color= #b1b100;]As Integer MaxX [color= #339933;]= CInt[color= #009900;]( Img[color= #339933;].Width [color= #339933;]/ [color= #cc66cc;]2[color= #009900;]) [color= #339933;]: MaxY [color= #339933;]= CInt[color= #009900;]( Img[color= #339933;].Height [color= #339933;]/[color= #cc66cc;]2 [color= #009900;]) Using G [color= #b1b100;]As Graphics [color= #339933;]= Graphics[color= #339933;].FromImage[color= #009900;]( Bmp [color= #009900;]) G[color= #339933;].DrawRectangle[color= #009900;]( Img[color= #339933;], [color= #000000; font-weight: bold;]New Rectangle[color= #009900;]( [color= #cc66cc;]0[color= #339933;], [color= #cc66cc;]0[color= #339933;], Img[color= #339933;].Width[color= #339933;], Img[color= #339933;].Height[color= #009900;])[color= #339933;], [color= #000000; font-weight: bold;]New Rectange[color= #009900;]( [color= #cc66cc;]0[color= #339933;], [color= #cc66cc;]0[color= #339933;], MaxX[color= #339933;], Ma xY [color= #009900;]) [color= #339933;], Pixel [color= #009900;])
بهذا تكون قد كبرت ( مايقابل الـ Pixel ) بضعف حجمه .
بالتوفيق .
تم تعديل هذه المشاركة بواسطة Bashar Rabat في 26 يناير 2009 في 07:36
The important thing is not so much
that every child should be taught,
as that every child should be given the wish to learn.
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…