Mám takový zajímavý oříšek. Dělám prográmek, u kterého chci dejme tomu 10 obrázku JPG dát do jednoho souboru a pak ho pomocí OPEN .... FOR BINARY... načíst. Problém je že mám ten obrázek ve Stringu a vůbec nevím jak ho mám přinutit aby se načetl do PictureBoxu nebo Image. Taky jsem zkoušel deklarovat objekt jako stdPicture ale to je stejné.. Nevíte někdo o tom něco? Děkuji za odpověď
Fórum › Visual Basic
JPG jako String --> Picturebox/Image
proboha,jak ve stringu???
jesti to chápu správně tak ve stringu máš tak akorát cestu k souboru,jinak dost dobře nechápu k čemu taková volovina je, na to se nepoužívá soubor ale tabulka, nebo resource, použij imagelist a nevymýšlej krávoviny.
To co chceš totiž znamená že si musíš vytvořít vlastní formát souboru včetně hlavičky a ten pak používat, do hlavičky musíš nacpat informace od jakého bajtu k jakému je daný jpg, kolik jich tam je atd.
maty píše:#
# proboha,jak ve stringu???#
#jesti to chápu správně tak ve stringu máš tak akorát cestu k souboru,jinak dost dobře nechápu k čemu taková volovina je, na to se nepoužívá soubor ale tabulka, nebo resource, použij imagelist a nevymýšlej krávoviny.#
#To co chceš totiž znamená že si musíš vytvořít vlastní formát souboru včetně hlavičky a ten pak používat, do hlavičky musíš nacpat informace od jakého bajtu k jakému je daný jpg, kolik jich tam je atd.
Ano, nepochopil jste. Z toho důvodu jste to asi nazval kravinou. Ale nevadí.I tak Vám děkuju.
maty píše:#
# proboha,jak ve stringu???#
#jesti to chápu správně tak ve stringu máš tak akorát cestu k souboru,jinak dost dobře nechápu k čemu taková volovina je, na to se nepoužívá soubor ale tabulka, nebo resource, použij imagelist a nevymýšlej krávoviny.#
#To co chceš totiž znamená že si musíš vytvořít vlastní formát souboru včetně hlavičky a ten pak používat, do hlavičky musíš nacpat informace od jakého bajtu k jakému je daný jpg, kolik jich tam je atd.
To Maty: heh, skúsil si niekedy otvoriť obrázok v poznámkovom bloku ? to je stringový raťazec obrázku ....
To Temnonos: na túto otázku tiež hľadám riešenie, zatial som to riešil tak, ze sa do binarneho suboru uložia udaje a meno suboru a s tymto binarnym suborom sa nesie aj cela zlozka, kde su obrazky (proste zlozka napr ako cely save) takze za behu programu uz iba z binarneho vytiahnem meno suboru a ten nacitam z tej istej zlozky kde je tento binar
http://jakub.lajmon.name
Binary Ranger píše:#
##maty píše:#
# proboha,jak ve stringu???#
#jesti to chápu správně tak ve stringu máš tak akorát cestu k souboru,jinak dost dobře nechápu k čemu taková volovina je, na to se nepoužívá soubor ale tabulka, nebo resource, použij imagelist a nevymýšlej krávoviny.#
#To co chceš totiž znamená že si musíš vytvořít vlastní formát souboru včetně hlavičky a ten pak používat, do hlavičky musíš nacpat informace od jakého bajtu k jakému je daný jpg, kolik jich tam je atd.
#To Maty: heh, skúsil si niekedy otvoriť obrázok v poznámkovom bloku ? to je stringový raťazec obrázku ....#
##
#To Temnonos: na túto otázku tiež hľadám riešenie, zatial som to riešil tak, ze sa do binarneho suboru uložia udaje a meno suboru a s tymto binarnym suborom sa nesie aj cela zlozka, kde su obrazky (proste zlozka napr ako cely save) takze za behu programu uz iba z binarneho vytiahnem meno suboru a ten nacitam z tej istej zlozky kde je tento binar
Tojo.. ale mě nejde o to jak ten obr (string) uložit.. ale když už to mám přes binary načtený tak jak to převést do nějakého formátu kterej by šel dát jako Picture.Picture nebo Image.Picture... Jedno z řešení taky je že bych ty stringy ukládal do dočasných souborů a používal LoadPicture(cesta) a pak Kill cesta ale to se mi nechce. Chci to bez mezi ukladání.
to snad nemá cenu ani komentovat,ale přesto to udělám
Picture je Proprta objektu, tudíž do lže něj nacpat jen a jen cestu k souboru ve specifickém formátu,objekt si soubor sám vnitřní metodou načte!!!!!!!!!!!!!!!!!!!!!! Tudíž do proprty picture nelze zadat nic jiného než cestu k nějakému jpg, bmp ,kapišto!!!!!!!!!!!!!!
Proto jsem napsal krávovinu a trvám na tom.
Opakuji a naposled to co chceš znamená vlastní formát souboru,vlastní metody zpracování dat a použití API funkcí které vykreslí daný obrázek přímo na form
Stringový řetězec obrázku..HAHAHAHA, tos mě vážně dostal, no tak to zkus vem si obrázek v notepadu ho otevři, pak ho ulož jako a zkus jej prohlédnout!!!!!!!!!!!!!!!!!!!Myslím že už obrázek nebude,LOLOL
Notepad ti totiž provede, co?????
Samozřejmě že jediné co můžeš udělat je dělat to přes tmp fajly, ale až se tí povede dostat do objektu Image, soubor který si binárně pospojoval z několika JPG a až ti to image objekt zobrazí, tak sežeru vlastní klobouk, ty lamo:-)
To Temnonos: ve VB sice nedelam , ale mohl bys ten obrazek nacist do streamu , a pak ho poslat tomu PictureBoxu, v tom by snad nemel byt problem.
Konkretne treba Image.FromStream(Stream) ...
Dim stream As Stream
Dim returnValue As Image
returnValue = Image.FromStream(stream)
Chcelo by to zmiernit ton a vyhrady k napadu napisat normalne a nie ako superinteligentny blbec, ktory zjedol vsetku mudrost sveta :)maty píše:#
# to snad nemá cenu ani komentovat,ale přesto to udělám#
#Picture je Proprta objektu, tudíž do lže něj nacpat jen a jen cestu k souboru ve specifickém formátu,objekt si soubor sám vnitřní metodou načte!!!!!!!!!!!!!!!!!!!!!! Tudíž do proprty picture nelze zadat nic jiného než cestu k nějakému jpg, bmp ,kapišto!!!!!!!!!!!!!!#
#Proto jsem napsal krávovinu a trvám na tom.#
#Opakuji a naposled to co chceš znamená vlastní formát souboru,vlastní metody zpracování dat a použití API funkcí které vykreslí daný obrázek přímo na form#
#Stringový řetězec obrázku..HAHAHAHA, tos mě vážně dostal, no tak to zkus vem si obrázek v notepadu ho otevři, pak ho ulož jako a zkus jej prohlédnout!!!!!!!!!!!!!!!!!!!Myslím že už obrázek nebude,LOLOL#
#Notepad ti totiž provede, co?????#
#Samozřejmě že jediné co můžeš udělat je dělat to přes tmp fajly, ale až se tí povede dostat do objektu Image, soubor který si binárně pospojoval z několika JPG a až ti to image objekt zobrazí, tak sežeru vlastní klobouk, ty lamo:-)
To Smokie:Své výhrady jsem napsal v prvním příspěvku, když mi ale někdo na toto napíše
To Maty: heh, skúsil si niekedy otvoriť obrázok v poznámkovom bloku ? to je stringový raťazec obrázku ....
přeloženo, ty seš ale blbec = teď jsem tě dostal,naprosto ignoruje co jsem napsal
, přitom evidentně nemá ani ánung o základnech, tak to mě fakt nakrkne.
Takže proto ten tón.Ale vůbec, komu není rady ....
Ale vies, clovek lahsie druhemu nieco vyhovori ak ten druhy bude mat pocit, ze mu clovek radi a nie sa z neho vysmieva :)maty píše:#
# To Smokie:Své výhrady jsem napsal v prvním příspěvku, když mi ale někdo na toto napíše#
##
#To Maty: heh, skúsil si niekedy otvoriť obrázok v poznámkovom bloku ? to je stringový raťazec obrázku ....#
##
#přeloženo, ty seš ale blbec = teď jsem tě dostal,naprosto ignoruje co jsem napsal#
#, přitom evidentně nemá ani ánung o základnech, tak to mě fakt nakrkne.#
#Takže proto ten tón.Ale vůbec, komu není rady ....#
#
maty píše:#
# to snad nemá cenu ani komentovat,ale přesto to udělám#
#Picture je Proprta objektu, tudíž do lže něj nacpat jen a jen cestu k souboru ve specifickém formátu,objekt si soubor sám vnitřní metodou načte!!!!!!!!!!!!!!!!!!!!!! Tudíž do proprty picture nelze zadat nic jiného než cestu k nějakému jpg, bmp ,kapišto!!!!!!!!!!!!!!#
#Proto jsem napsal krávovinu a trvám na tom.#
#Opakuji a naposled to co chceš znamená vlastní formát souboru,vlastní metody zpracování dat a použití API funkcí které vykreslí daný obrázek přímo na form#
#Stringový řetězec obrázku..HAHAHAHA, tos mě vážně dostal, no tak to zkus vem si obrázek v notepadu ho otevři, pak ho ulož jako a zkus jej prohlédnout!!!!!!!!!!!!!!!!!!!Myslím že už obrázek nebude,LOLOL#
#Notepad ti totiž provede, co?????#
#Samozřejmě že jediné co můžeš udělat je dělat to přes tmp fajly, ale až se tí povede dostat do objektu Image, soubor který si binárně pospojoval z několika JPG a až ti to image objekt zobrazí, tak sežeru vlastní klobouk, ty lamo:-)
Ale ty to asi furt ještě nechápeš. Si to představ jako nějaký ZIP, který akorád nesnižuje velikost. A potřebuješ z toho zipu něco vzít a nahrát to do svýho programu v podobě obrázku aniž bys to musel někam meziukládat a načítat z jinýho souboru. Ty tu pořád popisuješ jak to nejde. To víme že to nejde, jinak bych to sem nepsal kdybych věděl jak to mam udělat. Potřebuju nějaký aspoň trochu detailnější řešení a ne obecnou rovinu.
Jinak se omlouvám Temnonosovi,
autor té kraviny o notepadu je Binary Ranger,čehož jsem si nevšiml, takže ten notepad je na něj.
Jinak platí co jsem napsal, spojení více binárních souborů do jednoho vyžaduje vlastní formát souboru, vlasní metody načítání a ukládání a vlastní metody zobrazování, nelze použít žádné systémové komponenty.
Na toto již existuje objekt imagelist který má i metody pro načtení-to jsem napsal v prvním příspěvku.
maty píše:#
# Jinak se omlouvám Temnonosovi,#
#autor té kraviny o notepadu je Binary Ranger,čehož jsem si nevšiml, takže ten notepad je na něj.#
#Jinak platí co jsem napsal, spojení více binárních souborů do jednoho vyžaduje vlastní formát souboru, vlasní metody načítání a ukládání a vlastní metody zobrazování, nelze použít žádné systémové komponenty.#
#Na toto již existuje objekt imagelist který má i metody pro načtení-to jsem napsal v prvním příspěvku.#
#
Jo to je jasné, pro to si dělám vlastní funkce. Funkci pro zápis, funkci pro čtení, funkci pro třídění... atd. Ale prostě ve výsledku stejně máš String. V tom je ten problém. Ale asi nejlepší řešení bude ty načtené obrázky ve Stringu ukládat jako temp soubory někam zvlášť a ty pak načítat funkcí LoadPictre(cesta).Ale chtěl bych přijít na lepší způsob no.
Třeba zapojit dll funkci Setpixel :D Jenže to bych musel detailně znát ten JPEG formát a to neznám. Jediný co vim že je to ztrátový formát a že dochází ke "zhoršení" kvality oproti originální bitmapě.
O jpegu - abych se přiznal jednou jsem se babral s jpegem , šlo o dopsání volitelných informací do obrázku, autor, datum, popis
a už nikdy více:-)
http://www.media.mit.edu/pia/Research/deepview/exif.html
jinak binární data cpát do stringu je blbost,tzn pracujte pouze binárním čteníma binárním zápisem,chtěl bych vidět jak 2mb BMP cpete do stringu,navíc si nejsem jist jestli nedojde k nechtěné modifikaci dat
Add tmp, ostatně i wokna to dělají přes temp fajly
maty píše:#
# O jpegu - abych se přiznal jednou jsem se babral s jpegem , šlo o dopsání volitelných informací do obrázku, autor, datum, popis#
#a už nikdy více:-)#
##
#http://www.media.mit.edu/pia/Research/deepview/exif.html#
##
#jinak binární data cpát do stringu je blbost,tzn pracujte pouze binárním čteníma binárním zápisem,chtěl bych vidět jak 2mb BMP cpete do stringu,navíc si nejsem jist jestli nedojde k nechtěné modifikaci dat#
#Add tmp, ostatně i wokna to dělají přes temp fajly
No ale stejně ikdyž bys to otvíral pomocí Binary módu tak stejně ty data musíš uložit do nějaké proměné. A vzhledem k tomu že String má kapacitu přes 2 miliardy znaků tak to jde ne?.. Nebo tě napadá lepší datový typ ? :)
btw ludia, do image sa neda vlozit gif??
myslim ako banner
Temnonos:jak flašinet, binární soubor-což jpg určitě je, se do žádné proměnné neukládá!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Dokonce i windows vše řeší přes TMP soubory, nebo jste si nevšimnul že při otevření třeba dokumentu wordu se ve vašem TMP vytvoří nový soubor?????????????????????? Prostě přímý zápis a čtení na disku.
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Vlastni Metadata do image (JPG nebo PNG) — založil VladislavK
Jak rozdělit string obsahující \r\n jako separátor slov na stringy o… — založil ProXicT
Kontrola zda string obsahuje jiný string — založil beachboy
String to hex ebo Byte()"string" — založil Roman Uherek
PictureBox — založil Wabbit
Moderátoři diskuze