Mivel terhelés PNG (tpngimage komponens)

Hozzon létre egy új projektet, mentse el, másolja azt a mappát, ahol a projekt teljes tartalmát menti a fájlt (természetesen hivatkozás nélkül). A szekció használja a projekt add pngimage. Most már szokásos módon LoadFromFile fájdalmasan ismerős TPicture zagruzir PNG fájlt. Most, a szavakat tettek. Feküdt ki az alakja TButton és TImage. Hozzon létre egy eseménykezelő OnClick gomb:

A projekt futtatásához, és kattintson a gombra, az eredmény fájl sikeresen betöltve, és támogatja a alfa csatornával, ami több lehetőséget regisztrációs felületen.

De ez a megközelítés, amellett, hogy az EXE van még szükség, és PNG képfájlok, ami elfogadhatatlan az egyes programokban. Ebben az esetben, akkor egészen egyszerűen nem. Vedd és kézzel Az alkalmazás fejlesztése során terhelés TImage fájlt, ahogy tettük JPEG és BMP. Ebben az esetben a grafika lesz tárolva EXE és külső PNG-fájlok nem szükséges.

Van egy másik lehetőség -, hogy hozzon létre egy erőforrás, és betölteni PNG erőforrás. A fordításhoz az erőforrást a Delphi fejlesztői környezet áll rendelkezésre, 32 bites fordító (brcc32.exe):

1. Hozzon létre egy BAT fájlt az alábbi tartalommal:

2. Hozzon létre egy szöveges fájlt a következő tartalommal:

3. Másolja a két fájlt és a PNG fájl neve 1.png egy külön mappába.

4. Húzza a szöveges fájlt a BAT fájl. Ha mindent helyesen, akkor az egy másik fájl a RES. A fájl neve pontosan ugyanaz, mint a szöveges fájlt.

Nevezze át a fájlt png.res és másolja át a mappát a mentett projektet. Ezután nyissa meg a projektet követően

add. Így kapcsolódik a forrás fájlt (png.res) a projekthez, és a fájl tartalma lesz található az Ön EXE.

Most már csak azt kell letölteni az adatokat. változó hirdetés

Leírás Típus TPNGObject van a mellékelt pngimage modul. Mi ragadt már az elején ezt a cikket. Akkor dobja a gomb alakú, és hozzon létre egy kezelőt a gombra kattintva:

Itt általában minden. Mi a módja annak, hogy válasszon ki az Ön számára.

Próbáltam letölteni, standard PNG dolgozott rendben (kezdve fájlok 32 BPP), de amint én változott BPP 24/8/4/1 és mentse a fájlt ACDSee 3.0, azonnal ki oshimki (olvassa a stream) kezdett ásni, elfogadták, hogy feltétel olvasásakor adatblokkot a patak fájl végére:
amíg (ChunkName = 'IEND'); (string

5041)
és tárolt fájl ACDSee csak ezt a blokkot, és nem elég (megtakarítás fájl mérete 8 byte).
OUTPUT talált egy egyszerű:
Hozzáadott változó:
StreamSz. egész;
inicializált:
StreamSz: = Stream.Size;
Helyébe a fenti feltétel:
amíg Stream.Position> = StreamSz;

Mint minden működik