Nechapu ze nemuzu najit puvodni clanek o me fotogalerii, ze bych nic nenapsal se mi vubec nechce verit. Prave jsem nahral na hosting novou verzi webu, ktera se nejvice lisi od te predchozi omezenim nahrani fotek na webu Photos.sunamo.cz s limitem 10000 obrazku nebo velikosti 1GB – u obou se jedna o vsechny nahranych obrazky …
Dnes jsem se pokusil znovu pouzit rozdelovani obrazku ve svem programu ShrinkerImages. Pouze s jednim obrazkem – totiz fotkou z me Lumie 435. Nicmene poprve jsem se realne setkal s obrazkem ktery mel nizsi DPI nez klasickych 96. Pokud ma obrazek jine DPI nez 96(vyzkousene to mam pouze s nizsim), tak treba metoda BitmapImage vraci …
Zakladem jsou 5 trid – RL, Translation, AppLangConverter, AppLang a AppLangHelper a vyctu Langs. Podle kodu poznate, ze jazyku program muze mit maximalne 10(jedna se o jedine cislo, tedy 0-9). Takze nyni vam tu naserviruji vsechny tyto tridy, vycty a jak se to pouziva v praxi: RL:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
usingSystem.Collections.Generic;
usingSystem.IO;
usingSystem.Threading.Tasks;
usingSystem.Xml;
usingSystem.Xml.Linq;
/// <summary>
/// Staticka trida, do ktere se ulozi pod jednotlive klice cesky text i anglicky preklad
/// Ma metodu pro vraceni textu na zaklade daneho jazyku.
/// Datova trida, obsahujici pouze cesky text a jeho odpovidajici anglicky preklad
/// </summary>
publicclassTranslation
{
publicstringEn=null;
publicstringCs=null;
publicTranslation(stringen,stringcs)
{
En=en;
Cs=cs;
}
}
AppLangConverter:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
usingswf;
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;
/// <summary>
/// Staticka prevodni trida, prevadejici vsechny data z tridy AppLang do retezce a naopak
/// </summary>
publicstaticclassAppLangConverter
{
publicstaticAppLang ConvertTo(stringb)
{
bytetype=0;
if(!byte.TryParse(b[0].ToString(),outtype))
{
returnnewAppLang(1,0);
}
bytelang=0;
if(!byte.TryParse(b[1].ToString(),outlang))
{
returnnewAppLang(1,0);
}
returnnewAppLang(type,lang);
}
publicstaticstringConvertFrom(AppLangt)
{
returnt.Type.ToString()+t.Language.ToString();
}
}
AppLang:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
/// <summary>
/// AppLang je pouze datova trida, ktera obsahuje dvou ciferne cislo. Pokud je prvni cislo 0, druhe cislo oznacuje ID jazyku, ktery bude fixne nastaveny. Pokud je 1. cislo 1, bude se jazyk nastavovat podle systemu.
/// </summary>
publicclassAppLang
{
bytelanguage=0;
bytetype=0;
/// <summary>
/// Pokud se jedna o systemovy jazyk, z hodnoty 0 se jazyk bere z CurrentUICulture, kdezto u hodnoty 1 z CurrentCulture
/// </summary>
publicbyteLanguage
{
get
{
returnlanguage;
}
}
/// <summary>
/// Typ jazyka zda fixni nebo systemovy
///
/// </summary>
publicbyteType
{
get
{
returntype;
}
}
/// <summary>
/// Je zde vykon na 1. miste, proto tato trida nema zadnou metodu Parse a zadny bezparametrovy konstruktor.
Po dlouhe dobe jsem se odhodlal zase neco naprogramovat v Dartu. Dart Editor je porad jeste o nervy, jak se s nim pracuje. Vzhled je subjektivni, ale pohodlnejsi pri praci je snad i TypeScript ve VS nez Dart ve Dart Editoru. A to uz nemluvim o tom ze mu nestaci 8GB RAM, bud neustale hlasi …