Dobry den. Mam cyklus ktory vykonava operaciu zhruba 1-2s a pocas toho cyklu by som chcel napr. nieco prekreslit v formulari alebo zisti ci nebolo stlacene tlacitko. V Delphi bolo na to nieco ako Application,terminate ako sa toto riesi v C# ?
Příspěvky odeslané z IP adresy 213.181.128.–
Tomu moc nerozumiem....
Dobry den.
Neviete mi prosim vysvetlit ako funguje algoritmus na zmenu kontrastu bitmapy? Jas zmenit viem aj pracovat s farbami. Ako sa upravuju RGB zlozky pixelu ked sa meni kontrast?
To liborb : Myslim ze to nieje potrebne pretoze hento taktiez pristupuje priamo k pixelom ibaze by to bolo treba upravit tak aby pristupovalo k nim na urovni Byte pre kazdy zlozu RGB samostatne podobne ako u Scanline u VCL kniznice. Len ten kod neviem nejak tak upravit...
Ako by sa dalo pristupovat k pixelom BMP aby to bolo "poriadne" rychle. Toto je dost pomale:
unsafe Bitmap NastavCervenou(Bitmap b)
{
// Uzamkne v paměti data bitmapy tak, aby s nimi bylo možno pracovat.
BitmapData bd = b.LockBits(new Rectangle(0,0,b.Width,b.Height),
ImageLockMode.ReadWrite,
PixelFormat.Format32bppArgb);
for (int y = 0; y< b.Height; y++)
{
// Vytvoří ukazatel na začátek y-té řádky bitmapy
int* ukzt = (int*)((int)bd.Scan0 + y * bd.Stride);
for (int x = 0; x <b.Width; x++)
{
// Vybere barvu pixelu
Color c = Color.FromArgb(*ukzt);
Color cervenyOdstin = Color.FromArgb(c.R,0,0);
// Nastaví barvu pixelu
*ukzt = cervenyOdstin.ToArgb();
// Posune ukazatel na x-tý pixel v dané řádce
ukzt++;
}
}
b.UnlockBits(bd);
return b;
}
Napr. taky Scanline v Delphi,C++ Builderi bol rychloste podstatne lepsie natom ake dany kod v C#.
Galeria vytvorena v ASP.NET doma na PC funguje v pohode ale na serveri (aspONE) uz nie, vzdy to vyhodi chybu pri tvorbe nahladov do galerie. Skusal som nastavit atributy pre jednotlive zlozky v TotalCommanderi aj priamo na stranke hostingu ale vzdy ked nastavim mod 777 tak mi to vyresetuje na povodne hodnoty (666):
Problematicky kod je:
string[] subory = Directory.GetFiles(Server.MapPath("Galeria/" + zlozka));
int vyska, sirka;
float pomer;
vyska = 120;
int max = subory.Length;
for (int j = 0; j < max; j++)
{
FileInfo inf = new FileInfo(subory[j]);
if (!File.Exists(Server.MapPath("~/Nahlady/" + zlozka + inf.Name)))
{
System.Drawing.Image img = System.Drawing.Image.FromFile(Server.MapPath("~/Galeria/" + zlozka + "/" + inf.Name));
pomer = (float)(img.Width) / (float)(img.Height);
sirka = (int)(vyska * pomer);
Label1.Text = sirka.ToString();
Bitmap bm = new Bitmap(sirka, vyska);
Graphics gr = Graphics.FromImage(bm);
gr.DrawImage(img, 0, 0, sirka, vyska);
gr.Dispose();
bm.Save(Server.MapPath("~/Nahlady/" + zlozka + inf.Name));
bm.Dispose();
}
}
Ako bv som to rozchodil? v zdrojovom kode chyba byt nemoze ked funguje doma?
Dobry den.
Chcem sa spytat, ze ako prijat data odoslane HTML formularom ASP.NET skriptom. Napr.
<form action="default.aspx" method="post">
<input name="o1" type="text" size="10" />
<input type="submit" value=" Posli " />
</form>
Aky kod mam pridat do default.aspx aby som prijal data z "o1"?
Dakujem za odpoved.