| | |
| Stránka: 1 z 1
| [ Príspevkov: 13 ] | |
Autor | Správa |
---|
Registrovaný: 26.11.06 Prihlásený: 22.01.24 Príspevky: 4118 Témy: 319 Bydlisko: HE/BA | Napísal Flety: 26.02.2009 18:32 | |
|
Nazdar, dá sa nejako zmenšiť bmp obrázok cez php? Viem o možnostiach ako zmenšiť jpg, gif a tak, ale nikde som nenašiel nič pre bmp, jedine pre wbmp. Dá sa to nejako?
|
|
Registrovaný: 01.01.06 Prihlásený: 25.12.21 Príspevky: 366 Témy: 47 Bydlisko: TT | Napísal jaji: 27.02.2009 21:46 | |
|
tusim bolo riesenie na php.net niekde v komentaroch k popisu funkcie zmenusujucej jpgcka. Skus tam pohladat
_________________ He who laughs last has not yet heard the bad news.
-- Bertolt Brecht
medicine student |
|
Registrovaný: 26.11.06 Prihlásený: 22.01.24 Príspevky: 4118 Témy: 319 Bydlisko: HE/BA | Napísal autor témy Flety: 27.02.2009 22:56 | |
|
Hmm...nič som nenašiel, iba funkcie na wbmp. Nepomohlo by mi to?
|
|
Registrovaný: 21.01.07 Prihlásený: 29.03.20 Príspevky: 660 Témy: 53 | |
Registrovaný: 26.11.06 Prihlásený: 22.01.24 Príspevky: 4118 Témy: 319 Bydlisko: HE/BA | Napísal autor témy Flety: 27.02.2009 23:19 | |
|
Dik, asi pomôže, ale je to strašne veľké keby niekto vedel o niečom menšom a použiteľnom tak budem rád ak to sem hodí. V každom prípade dík pepek92.
|
|
Registrovaný: 26.11.06 Prihlásený: 22.01.24 Príspevky: 4118 Témy: 319 Bydlisko: HE/BA | Napísal autor témy Flety: 28.02.2009 18:13 | |
|
No ok, tak použijem to, čo mi poslal pepek. Keby ale niekto vedel o niečom menšom tak prijmem
|
|
Registrovaný: 17.10.06 Prihlásený: 08.01.11 Príspevky: 1752 Témy: 17 | Napísal suchy: 28.02.2009 18:36 | |
|
a co tak si z tej triedy zobrat len to co potrebujes? potom uz tak velka nebude.
_________________ A Real Programmer might or might not know his wife's name. He does, however, know the entire ASCII code table. |
|
Registrovaný: 26.11.06 Prihlásený: 22.01.24 Príspevky: 4118 Témy: 319 Bydlisko: HE/BA | Napísal autor témy Flety: 28.02.2009 19:10 | |
|
No potrebujem všetko, lenže väčšinu mám, potrebujem teda len niečo ako zmenšiť BMP obrázok a to neviem. Navyše tá trieda mi nejde v cykle:)
|
|
Registrovaný: 26.11.06 Prihlásený: 22.01.24 Príspevky: 4118 Témy: 319 Bydlisko: HE/BA | Napísal autor témy Flety: 01.03.2009 12:22 | |
|
Prosím, pomôžte mi z tej classy vytiahnuť funkciu na zmenšenie bmp. Ta classa mi nefunguje presne podľa mojich predstav a chcem vonku teda len tú funkciu na BMPčka. Problém je v tom, že je jednak zahrnutá v classe a jednak používa viaceré funkcie a neviem presne určiť, čo z toho mám vybrať. A dosť to potrebujem tak mi to skúste odtiaľ dostať. Ja som to už skúšal ale nešlo to.
//Uf, teda tá classa je úplne nepoužiteľná. Okrem toho, že vyhadzuje obrovské množstvo chýb tak výsledok je nekvalitný. Asi použijem tú funkciu čo som mal predtým a pri bmp to nebudem zmenšovať, nechám to tak.
|
|
Registrovaný: 09.07.08 Prihlásený: 17.01.15 Príspevky: 1585 Témy: 96 |
_________________ neříkejte, že něco nejde udělat, protože se vždycky najde nějaký blbec, co neví, že to nejde – a udělá to! |
|
Registrovaný: 21.01.07 Prihlásený: 29.03.20 Príspevky: 660 Témy: 53 |
Problém je v tom, že wbmp nie je to isté ako bmp.
wbmp = Wireless BitMap (nie Windows Bitmap)
|
|
Registrovaný: 09.07.08 Prihlásený: 17.01.15 Príspevky: 1585 Témy: 96 |
tak potom som nič nepovedal... Ale predsa len v komentároch k imagecreatefromwbmp som našiel takúto funkciu: Kód: <?php public function imagecreatefrombmp($p_sFile) { // Load the image into a string $file = fopen($p_sFile,"rb"); $read = fread($file,10); while(!feof($file)&&($read<>"")) $read .= fread($file,1024); $temp = unpack("H*",$read); $hex = $temp[1]; $header = substr($hex,0,108); // Process the header // Structure: http://www.fastgraph.com/help/bmp_header_format.html if (substr($header,0,4)=="424d") { // Cut it in parts of 2 bytes $header_parts = str_split($header,2); // Get the width 4 bytes $width = hexdec($header_parts[19].$header_parts[18]); // Get the height 4 bytes $height = hexdec($header_parts[23].$header_parts[22]); // Unset the header params unset($header_parts); } // Define starting X and Y $x = 0; $y = 1; // Create newimage $image = imagecreatetruecolor($width,$height); // Grab the body from the image $body = substr($hex,108);
// Calculate if padding at the end-line is needed // Divided by two to keep overview. // 1 byte = 2 HEX-chars $body_size = (strlen($body)/2); $header_size = ($width*$height);
// Use end-line padding? Only when needed $usePadding = ($body_size>($header_size*3)+4); // Using a for-loop with index-calculation instaid of str_split to avoid large memory consumption // Calculate the next DWORD-position in the body for ($i=0;$i<$body_size;$i+=3) { // Calculate line-ending and padding if ($x>=$width) { // If padding needed, ignore image-padding // Shift i to the ending of the current 32-bit-block if ($usePadding) $i += $width%4; // Reset horizontal position $x = 0; // Raise the height-position (bottom-up) $y++; // Reached the image-height? Break the for-loop if ($y>$height) break; } // Calculation of the RGB-pixel (defined as BGR in image-data) // Define $i_pos as absolute position in the body $i_pos = $i*2; $r = hexdec($body[$i_pos+4].$body[$i_pos+5]); $g = hexdec($body[$i_pos+2].$body[$i_pos+3]); $b = hexdec($body[$i_pos].$body[$i_pos+1]); // Calculate and draw the pixel $color = imagecolorallocate($image,$r,$g,$b); imagesetpixel($image,$x,$height-$y,$color); // Raise the horizontal position $x++; } // Unset the body / free the memory unset($body); // Return image-object return $image; } ?>
_________________ neříkejte, že něco nejde udělat, protože se vždycky najde nějaký blbec, co neví, že to nejde – a udělá to! |
|
Registrovaný: 26.11.06 Prihlásený: 22.01.24 Príspevky: 4118 Témy: 319 Bydlisko: HE/BA | Napísal autor témy Flety: 02.03.2009 7:18 | |
|
roobertek, tá funkcia funguje, vďaka. Problém je ale v tom, že ďalej musím využiť funkciu imagebmp, ktorá neexistuje. Vedel by niekto napísať niečo ako imagejpeg aby to fungovalo rovnako na bmpčka a na túto, vyššie uvedenú funkciu?
//Našiel osm ešte toto: http://www.hotscripts.com/listing/image ... functions/ ale vyhadzuje mi to toto: Kód: <br /> <b>Warning</b>: imagesx(): supplied argument is not a valid Image resource in <b>F:\Portable soft\UsbWebserver\Root\includes\imgresize.php</b> on line <b>43</b><br /> <br /> <b>Warning</b>: imagesy(): supplied argument is not a valid Image resource in <b>F:\Portable soft\UsbWebserver\Root\includes\imgresize.php</b> on line <b>44</b><br /> <br /> <b>Warning</b>: Division by zero in <b>F:\Portable soft\UsbWebserver\Root\includes\imgresize.php</b> on line <b>47</b><br /> <br /> <b>Warning</b>: Division by zero in <b>F:\Portable soft\UsbWebserver\Root\includes\imgresize.php</b> on line <b>48</b><br /> <br /> <b>Warning</b>: imagecreatetruecolor() [<a href='function.imagecreatetruecolor'>function.imagecreatetruecolor</a>]: Invalid image dimensions in <b>F:\Portable soft\UsbWebserver\Root\includes\imgresize.php</b> on line <b>65</b><br /> <br /> <b>Warning</b>: imagecopyresampled(): supplied argument is not a valid Image resource in <b>F:\Portable soft\UsbWebserver\Root\includes\imgresize.php</b> on line <b>66</b><br /> <br /> <b>Warning</b>: imagecolorstotal(): supplied argument is not a valid Image resource in <b>F:\Portable soft\UsbWebserver\Root\includes\bmp.php</b> on line <b>29</b><br /> <br /> <b>Warning</b>: imagecolortransparent(): supplied argument is not a valid Image resource in <b>F:\Portable soft\UsbWebserver\Root\includes\bmp.php</b> on line <b>31</b><br /> <br /> <b>Warning</b>: imagesx(): supplied argument is not a valid Image resource in <b>F:\Portable soft\UsbWebserver\Root\includes\bmp.php</b> on line <b>43</b><br /> <br /> <b>Warning</b>: imagesy(): supplied argument is not a valid Image resource in <b>F:\Portable soft\UsbWebserver\Root\includes\bmp.php</b> on line <b>44</b><br /> BM6�������6���(������������������������������������� Vedel by mi niekto pomôcť?
|
|
| Stránka: 1 z 1
| [ Príspevkov: 13 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| CSS: Zmena veľkosti obrázka v HTML, XHTML, XML, CSS | 10 | 1550 | 15.08.2007 13:20 Flety | | Zistenie velkosti obrázka v PHP, ASP | 3 | 690 | 21.04.2009 18:23 emer | | Úprava veľkosti obrázka v PHP, ASP | 4 | 540 | 26.11.2008 13:44 Flety | | zmensenie velkosti obrazka v Grafické programy | 10 | 8638 | 02.11.2006 12:59 looser | | Zmena obrazka pri nadideni z myslov.../...Zmena pozadia v JavaScript, VBScript, Ajax | 2 | 2215 | 11.09.2007 22:42 rik | | Zmena obrázka v HTML, XHTML, XML, CSS | 1 | 528 | 04.10.2015 16:06 void | | Zmena velkosti v Pevné disky a radiče | 4 | 345 | 23.03.2015 19:15 p4tooo | | zmena velkosti particie v Pevné disky a radiče | 10 | 3933 | 23.10.2010 13:12 Qpkqkma | | Zmena veľkosti rámčeka v Video programy | 1 | 519 | 22.09.2008 23:10 neutronmind | | zmena velkosti videa v Ostatné programy | 7 | 1566 | 25.01.2007 19:45 quatermain | | Zmena velkosti videa v Video programy | 9 | 2009 | 09.07.2009 8:50 f4r0 | | Zmena veľkosti particie v Pevné disky a radiče | 0 | 682 | 19.03.2007 18:14 t0ki | | Zmena obrázka pri prejdení myšou v JavaScript, VBScript, Ajax | 4 | 1015 | 18.10.2007 19:51 pitrik1 | | zmena mena obrazka a dikritika v PHP, ASP | 5 | 611 | 02.03.2008 15:42 jaji | | zmena velkosti po prejdeni v JavaScript, VBScript, Ajax | 22 | 1209 | 07.12.2007 19:43 Flety | | Java - zmena velkosti pola v Assembler, C, C++, Pascal, Java | 18 | 895 | 21.07.2010 15:53 duracer |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|