Dinamikus képek kezelése. Az ezen az órán vett függvények a GD nevû nyílt forráskódú programkönyvtáron alapulnak.
|
|
- Benedek Dudás
- 9 évvel ezelőtt
- Látták:
Átírás
1 14. ÓRA Dinamikus képek kezelése Az ezen az órán vett függvények a GD nevû nyílt forráskódú programkönyvtáron alapulnak. A GD könyvtár olyan eszközcsoport, melynek segítségével futásidõben képeket hozhatunk létre és kezelhetjük azokat. A GD-rõl a weboldal szolgál bõvebb információval. Ha a könyvtárat telepítettük és a PHP-t is lefordítottuk, elkezdhetünk dinamikus képeket létrehozni a PHP grafikus függvényeivel. Sok rendszer még mindig a könyvtár egy régebbi változatát futtatja, amely a képeket GIF formátumban hozza létre. A könyvtár késõbbi változatai licenszokok miatt nem támogatják a GIF formátumot. Ha rendszerünkre a könyvtár egy újabb változatát telepítettük, úgy is lefuttathatjuk a PHP-t, hogy a képalkotó függvények kimeneti formátuma PNG legyen, amelyet a legtöbb böngészõ támogat. A GD könyvtár segítségével menet közben hozhatunk létre bonyolult alakzatokat a PHP grafikus függvényeivel. Az óra során a következõket tanuljuk meg: Hogyan hozzunk létre és jelenítsünk meg egy képet? Hogyan dolgozzunk a színekkel? Hogyan rajzoljunk alakzatokat, például köríveket, téglalapokat és sokszögeket?
2 óra Hogyan töltsünk ki színnel alakzatokat? Hogyan kezeljük a TrueType betûtípusokat? Képek létrehozása és megjelenítése Mielõtt elkezdhetnénk a képekkel foglalkozni, elõször szert kell tennünk egy képazonosítóra. Ezt az imagecreate() függvény segítségével tehetjük meg. Ennek két paramétere van, az egyik a kép magasságára vonatkozik, a másik a szélességére. Ekkor egy képazonosítót kapunk vissza, amelyet az órán tárgyalt majdnem mindegyik függvény esetében használni fogunk. Miután megkaptuk az azonosítót, már majdnem készen állunk arra, hogy megjelenítsük elsõ képünket a böngészõben. Ehhez az imagegif() függvényre van szükségünk, amelynek paramétere a képazonosító. A programban a kép létrehozásához és megjelenítéséhez használt függvényeket láthatjuk program Dinamikusan létrehozott kép 1: <?php 2: header("content-type: image/gif"); 3: $kep = imagecreate( 200, 200 ); 4: imagegif($kep); 5:?> Fontos, hogy a Content-type fejlécsort minden egyéb elõtt küldtük a böngészõnek. Közölnünk kell a böngészõvel, hogy egy képet küldünk, különben a program kimenetét HTML-ként kezeli. A programot a böngészõ már közvetlenül vagy egy IMG elem részeként hívhatja meg. <img src="14.1.program.php" alt="egy PHP készítette kép"> A ábrán láthatjuk a program kimenetét. Egy téglalapot hoztunk létre, de egyelõre nem tudjuk annak színét beállítani.
3 Dinamikus képek kezelése ábra Dinamikusan létrehozott alakzat A szín beállítása A szín beállításához egy színazonosítóra van szükségünk. Ezt az imagecolorallocate() függvénnyel kaphatjuk meg, amelynek paramétere a képazonosító, illetve három 0 és 255 közötti egész szám, amelyek a vörös, zöld és kék színösszetevõket jelentik. Egy színazonosítót kapunk vissza, amellyel késõbb alakzatok, kitöltések vagy szövegek színét határozhatjuk meg. $piros = imagecolorallocate($kep, 255,0,0); Az imagecolorallocate() függvény elsõ meghívásakor egyúttal átállítja a paraméterül kapott alakzat színét is. Így ha az elõzõ kódrészletet hozzáadjuk a programhoz, egy vörös téglalapot kapunk. 14 Vonalak rajzolása Mielõtt egy képre vonalat rajzolhatnánk, meg kell adnunk annak két végpontját. A képet úgy képzeljük el, mint képernyõpontokból álló tömböt, melynek mindkét tengelye 0-tól számozódik. A számozás kezdõpontja a kép bal felsõ sarka. Más szóval az (5, 8) koordinátájú képpont a hatodik képpont fentrõl lefelé és a kilencedik képpont balról jobbra számolva.
4 óra Az imageline() függvény két képpont közé rajzol egy egyenest. A függvény paraméterként egy képazonosítót vár, négy egész számot, amelyek az egyenes két végpontjának koordinátáit jelentik, valamint egy színazonosítót. Ha a programban megrajzoljuk a téglalap egy átlóját program Egyenes rajzolása az imageline() függvénnyel 1: <?php 2: header("content-type: image/gif"); 3: $kep = imagecreate( 200, 200 ); 4: $piros = imagecolorallocate($kep, 255,0,0); 5: $kek = imagecolorallocate($kep, 0,0,255 ); 6: imageline( $kep, 0, 0, 199, 199, $kek ); 7: imagegif($kep); 8:?> Két színazonosítót kapunk, egyet a piros és egyet a kék színnek. Ezután a $kek változóban tárolt azonosítót használjuk a vonal színének megadására. Fontos megjegyeznünk, hogy a vonal a (199, 199) és nem a (200, 200) koordinátákban végzõdik, tekintve, hogy a képpontokat 0-tól kezdve számozzuk. A ábrán a program eredményét láthatjuk ábra Egyenes rajzolása az imageline() függvénnyel
5 Dinamikus képek kezelése 263 Alakzatok kitöltése A PHP segítségével ugyanúgy kiszínezhetünk alakzatokat, mint kedvenc grafikai programunkkal. Az imagefill() függvény bemenete egy képazonosító, a kitöltés kezdõkoordinátái, valamint egy színazonosító. A függvény a kezdõ képponttal megegyezõ színû szomszédos képpontokat a kijelölt színre állítja. A program a képet az imagefill() függvény meghívásával teszi egy kicsit érdekesebbé program Az imagefill() függvény használata 1: <?php 2: header("content-type: image/gif"); 3: $kep = imagecreate( 200, 200 ); 4: $piros = imagecolorallocate($kep, 255,0,0); 5: $kek = imagecolorallocate($kep, 0,0,255 ); 6: imageline( $kep, 0, 0, 199, 199, $kek ); 7: imagefill( $kep, 0, 199, $kek ); 8: imagegif($kep); 9:?> A ábrán a program kimenetét láthatjuk ábra Az imagefill() függvény használata 14
6 óra Körív rajzolása Az imagearc() függvény segítségével köríveket rajzolhatunk. Bemenete egy képazonosító, a középpont koordinátája, a szélességet meghatározó egész szám, a magasságot meghatározó egész szám, egy kezdõ- és egy végpont (fokban mérve), valamint egy színazonosító. A köríveket az óramutató járásának megfelelõen, 3 órától kezdve rajzoljuk. A következõ kódrészlet egy negyed körívet rajzol ki: imagearc( $kep, 99, 99, 200, 200, 0, 90, $kek ); Ez egy olyan körívrészletet jelenít meg, melynek középpontja a (99, 99) koordinátájú pontban van. A teljes magasság és szélesség képpontnyi. A körív 3 óránál kezdõdik és 90 fokot rajzolunk (azaz 6 óráig). A program teljes kört rajzol és kék színnel tölti ki program Kör rajzolása az imagearc() függvénnyel 1: <?php 2: header("content-type: image/gif"); 3: $kep = imagecreate( 200, 200 ); 4: $piros = imagecolorallocate($kep, 255,0,0); 5: $kek = imagecolorallocate($kep, 0,0,255 ); 6: imagearc( $kep, 99, 99, 180, 180, 0, 360, $kek ); 7: imagefill( $kep, 99, 99, $kek ); 8: imagegif($kep); 9:?> A program kimenetét a ábrán láthatjuk.
7 Dinamikus képek kezelése ábra Kör rajzolása az imagearc() függvénnyel Téglalap rajzolása A PHP imagerectangle() függvényével téglalapot rajzolhatunk. Az imagerectangle() bemenete egy képazonosító, a téglalap bal felsõ és jobb alsó sarkának koordinátája, valamint egy színazonosító. A következõ kódrészlet olyan téglalapot rajzol, melynek bal felsõ és jobb alsó koordinátái rendre (19, 19) és (179, 179): imagerectangle( $kep, 19, 19, 179, 179, $kek ); Az alakzatot ezután az imagefill() függvénnyel tölthetjük ki. Mivel ez meglehetõsen gyakori mûvelet, a PHP-ban létezik az imagefilledrectangle() függvény, amely ugyanazokat a bemeneti értékeket várja, mint az imagerectangle(), de az általunk meghatározott színnel ki is tölti a téglalapot. A program egy kiszínezett téglalapot hoz létre és megjeleníti a böngészõben. 14
8 óra program Téglalap rajzolása az imagefilledrectangle() függvénnyel 1: <?php 2: header("content-type: image/gif"); 3: $kep = imagecreate( 200, 200 ); 4: $piros = imagecolorallocate($kep, 255,0,0); 5: $kek = imagecolorallocate($kep, 0,0,255 ); 6: imagefilledrectangle( $kep, 19, 19, 179, 179, $kek ); 7: imagegif( $kep ); 8:?> A ábrán a program által elõállított képet láthatjuk ábra Téglalap rajzolása az imagefilledrectangle() függvénnyel Sokszög rajzolása Az imagepolygon() függvény segítségével kifinomultabb alakzatokat is rajzolhatunk. E függvény bemenete egy képazonosító, a pontok koordinátáiból álló tömb, az alakzat pontjainak számát jelzõ egész szám és egy színazonosító. Az imagepolygon() bemenetét képezõ tömbnek számmal indexeltnek kell lennie. Az elsõ két elem az elsõ pont koordinátáit adja meg, a második kettõ a második pontét és így tovább. Az imagepolygon() függvény megrajzolja a pontok közötti vonalakat és az utolsó pontot automatikusan összeköti az elsõvel. Az imagefilledpolygon() függvény segítségével színnel kitöltött sokszögek hozhatók létre.
9 Dinamikus képek kezelése 267 A program egy kitöltött sokszöget rajzol és jelenít meg a böngészõben program Sokszög rajzolása az imagefilledpolygon() függvénnyel 1: <?php 2: header("content-type: image/gif"); 3: $kep = imagecreate( 200, 200 ); 4: $piros = imagecolorallocate($kep, 255,0,0); 5: $kek = imagecolorallocate($kep, 0,0,255 ); 6: $pontok = array (10, 10, 7: 190, 190, 8: 190, 10, 9: 10, : ); 11: imagefilledpolygon( $kep, $pontok, count ( $pontok )/2, $kek ); 12: imagegif($kep); 13:?> Vegyük észre, hogy az összekötendõ pontok száma az imagefilledpolygon() függvény hívásakor megegyezik a $pontok tömb elemei számának felével. A ábrán a program eredményét láthatjuk ábra Sokszög rajzolása az imagefilledpolygon() függvénnyel 14
10 óra A színek átlátszóvá tétele A PHP az imagecolortransparent() függvénnyel lehetõvé teszi, hogy a kiválasztott színeket az ábrán belül áttetszõvé tegyük. A függvény bemenete egy kép- és egy színazonosító. Ha a képet megjelenítjük egy böngészõben, az imagecolortransparent() függvénynek átadott szín áttetszõ lesz. A program kimenete a sokszöget rajzoló programot úgy változtatja meg, hogy az alakzat úszni fog a böngészõben, ahelyett, hogy egy háttérszín elõtt jelenne meg program A színek átlátszóvá tétele az imagecolortransparent() függvénnyel 1: <?php 2: header("content-type: image/gif"); 3: 4: $kep = imagecreate( 200, 200 ); 5: $piros = imagecolorallocate($kep, 255,0,0); 6: $kek = imagecolorallocate($kep, 0,0,255 ); 7: 8: $pontok = array (10, 10, 9: 190, 190, 10: 190, 10, 11: 10, : ); 13: 14: imagefilledpolygon( $kep, $pontok, count ( $pontok )/2, $kek ); 15: imagecolortransparent( $kep, $piros ); 16: imagegif($kep); 17:?> A ábrán a program kimenetét láthatjuk.
11 Dinamikus képek kezelése ábra A színek átlátszóvá tétele az imagecolortransparent() függvénnyel Szövegek kezelése Ha rendszerünkön vannak TrueType betûk, a képekre írhatunk is. A GD programkönyvtár mellett szükségünk lesz a FreeType programkönyvtár telepítésére is. Ha ezek rendelkezésünkre állnak, egy képben megjelenõ diagramokat és navigációs elemeket is létrehozhatunk. A PHP biztosít számunkra egy olyan eszközt is, amellyel ellenõrizhetjük, hogy a beírandó szöveg elfér-e a rendelkezésre álló helyen. Szövegírás az imagettftext() függvénnyel Az imagettftext() függvénnyel az ábrákra szöveget írhatunk. A függvény nyolc bemenõ paramétere a következõ: képazonosító, méret, amely a kiírandó szöveg magasságára utal, szög, a kezdõ x és y koordináták, színazonosító, a TrueType betûtípus elérési útvonala és a kiírandó szöveg. 14 A kiírandó szöveg kezdõkoordinátája határozza meg, hol lesz a szöveg elsõ karakterének alapvonala. A program egy karakterláncot ír az ábrára, majd az eredményt megjeleníti a böngészõben.
12 óra program Szövegírás az imagettftext() függvénnyel 1: <?php 2: header("content-type: image/gif"); 3: 4: $kep = imagecreate( 400, 200 ); 5: $piros = imagecolorallocate($kep, 255,0,0); 6: $kek = imagecolorallocate($kep, 0,0,255 ); 7: $betukeszlet = "/usr/local/office52/share/fonts/ /TrueType/arial.ttf"; 8: 9: imagettftext( $kep, 50, 0, 20, 100, $kek, $betukeszlet, "Üdvözöljük!" ); 10: 11: imagegif($kep); 12:?> Létrehozunk egy 400 képpontnyi széles és 200 képpontnyi magas vásznat, megadunk két színt és a $betukeszlet változóban tároljuk a TrueType betûtípus elérési útját. Ezután ráírjuk az ábrára a Üdvözöljük! szöveget. Figyelem, a betûtípusok a kiszolgálón feltehetõleg más könyvtárban találhatók! Ha nem vagyunk biztosak a helyben, keressük a.ttf kiterjesztésû fájlokat. Az imagettftext() meghívásához az 50-es magasságot, 0 fokos szöget és (20, 100) kezdõkoordinátát adtuk át. Emellett a függvény megkapja még a $kek változóban tárolt színazonosítót és a $betukeszlet változóban tárolt betûtípust, végül a kiírandó szöveget. Az eredményt a ábrán láthatjuk ábra Szöveg írása az imagettftext() függvénnyel
13 Dinamikus képek kezelése 271 Persze most még csak találgatunk, hová tegyük a szöveget. A betûméret nem árul el sokat a szöveg magasságáról, a szélességérõl még kevesebbet. Az imagettftext() függvény persze visszaad információt a szöveg kiterjedésérõl, de akkorra már minden eldõlt. Szerencsére a PHP lehetõséget nyújt arra, hogy próbálkozzunk, mielõtt még élesben elvégeznénk a mûveletet. Szöveg kiterjedésének ellenõrzése az imagettfbox() függvénnyel A szöveg kiterjedésérõl az imagettfbox() függvénnyel szerezhetünk információt, amely onnan kapta nevét, hogy a szöveget határoló dobozt írja le. A függvény bemenete a betûméret, a szög, a betûtípus elérési útja és a kérdéses szöveg. Azon kevés függvények egyike, melyekhez nem kell a képazonosító. Egy nyolcelemû tömböt ad vissza, amely a szöveg kiírásához szükséges terület paramétereit (koordinátáit) tartalmazza. A táblázatban a függvény által visszaadott tömböt értelmezzük táblázat Az imagettfbox() függvény által visszaadott tömb Sorszám Leírás 0 bal alsó (vízszintes tengely) 1 bal alsó (függõleges tengely) 2 jobb alsó (vízszintes tengely) 3 jobb alsó (függõleges tengely) 4 jobb felsõ (vízszintes tengely) 5 jobb felsõ (függõleges tengely) 6 bal felsõ (vízszintes tengely) 7 bal felsõ (függõleges tengely) 14 A függõleges tengelyhez visszaadott számok (1-es, 3-as, 5-ös, és 7-es tömbelemek) a szöveg alapvonalához viszonyulnak, amelynek koordinátája 0. A szöveg tetejének a függõleges tengelyen mért értékei ehhez képest általában negatív számok, míg a szöveg aljának itt mért értékei általában pozitívak. Így kapjuk meg, hány képponttal nyúlik a szöveg az alapvonal alá. Az imagettfbox() által figyelembe vett koordinátarendszert úgy kell elképzelnünk, mintha a szöveg alapvonala lenne az y irányban vett 0 érték és a negatív koordináták attól felfelé, a pozitívak pedig attól lefelé helyezkednének el. Így például ha az imagettfbox() függvénnyel ellenõrizendõ szövegben van egy "y", a visszakapott tömbben az 1-es indexû elem lehet, hogy 3 lesz, mivel az "y" alsó szára három képponttal nyúlik
14 óra az alapvonal alá. Lehetséges, hogy a 7-es elem 10 lesz, mivel a szöveg 10 képponttal van az alapvonal fölé emelve. A pontos értékek betûtípustól és betûmérettõl függnek. Csak hogy bonyolítsuk a helyzetet, úgy tûnik, hogy az imagettfbox() függvény által visszaadott alapvonal és a rajzolás közben látható között 2 képpontos eltolás van. Ezt úgy ellensúlyozhatjuk, hogy az alapvonalat két képpontnyival magasabbnak képzeljük, mint amilyennek az imagettfbox() függvény mutatja. A vízszintes tengelyen a bal oldali számok (a 0-ás és a 6-os elem) esetében az imagettfbox() függvény az adott kezdõpont elõtt kezdõdõ szöveget negatív számmal kifejezett eltolással jelöli. Ez általában alacsony szám, mivel a betûk jellemzõen jelentõsebb eltérést mutatnak az alapvonaltól, mint az x irányú kezdõkoordinátától (gondoljunk a p, g vagy j betûkre). A vízszintes tengelyen így már csak az elvárt pontosság kérdése, hogy szükségünk van-e a koordináták kiigazítására. Az imagettfbox() függvény által visszaadott értékeket arra is használhatjuk, hogy az ábrán belül a szöveget igazítsuk. A program dinamikusan küldi a böngészõnek a szöveget, úgy, hogy mind a vízszintes, mind a függõleges tengelyen középre helyezi azt program Szöveg elhelyezése az imagettfbox() függvény használatával 1: <?php 2: header("content-type: image/gif"); 3: $magassag = 100; 4: $szelesseg = 200; 5: $betumeret = 50; 6: if (! isset ( $szoveg ) ) 7: $szoveg = "Változtasson meg!"; 8: $kep = imagecreate( $szelesseg, $magassag ); 9: $piros = imagecolorallocate($kep, 255,0,0); 10: $kek = imagecolorallocate($kep, 0,0,255 ); 11: $betukeszlet = "/usr/local/office52/share/fonts/ /TrueType/arial.ttf"; 12: $szovegszelesseg = $szelesseg; 13: $szovegmagassag; 14: while ( 1 ) 15: { 16: $doboz = imagettfbox( $betumeret, 0, $betukeszlet, $szoveg ); 17: $szovegszelesseg = abs( $doboz[2] ); 18: $szovegmagassag = ( abs($doboz[7]) )-2;
15 Dinamikus képek kezelése program (folytatás) 19: if ( $szovegszelesseg < $szelesseg - 20 ) 20: break; 21: $betumeret--; 22: } 23: $gifxkozep = (int) ( $szelesseg/2 ); 24: $gifykozep = (int) ( $magassag/2 ); 25: imagettftext( $kep, $betumeret, 0, 26: (int) ($gifxkozep-($szovegszelesseg/2)), 27: (int) ($gifykozep+($szovegmagassag/2)), 28: $kek, $betukeszlet, $szoveg ); 29: imagegif($kep); 30:?> A kép magasságát és szélességét a $magassag és $szelesseg változókban tároljuk, a betûtípus alapbeállítású méretét pedig 50-re állítjuk. Megvizsgáljuk, hogy létezik-e már a $szoveg nevû változó; ha nem, beállítjuk egy alapértékre. Ezzel az eljárással egy ábrának is lehetnek paraméterei, fogadhat adatot egy weboldalról akár egy URL keresõkifejezésébõl, akár egy kitöltött ûrlapról. A képazonosító elõállításához az imagecreate() függvényt használjuk. A színazonosítókat a szokásos módon állítjuk elõ, a $betukeszlet nevû változóban pedig a TrueType betûtípus elérési útját rögzítjük. Azt szeretnénk, hogy a $szoveg változóban tárolt karaktersorozat elférjen a rendelkezésére álló helyen, de egyelõre nem tudhatjuk, hogy ez sikerülni fog-e. A while utasításon belül átadjuk a betûtípus elérési útját és a szöveget az imagettfbox() függvénynek, az eredményül kapott tömböt pedig a $doboz változóba helyezzük. A $doboz[2] tartalmazza a jobb alsó sarok helyét a vízszintes tengelyen. Ezt vesszük a karaktersorozat szélességének és a $szovegszelesseg változóban tároljuk. 14 A szöveget függõlegesen is középre szeretnénk helyezni, de a szöveg alapvonala alatt lévõ részt figyelmen kívül hagyva. Az alapvonal feletti magasság meghatározásához használhatjuk a $doboz[7] változóban található szám abszolút értékét, bár ezt még ki kell igazítanunk a fent említett két képponttal. Ezt az értéket a $szovegmagassag változóban tároljuk. Most, hogy kiszámítottuk a szöveg szélességének értékét, összevethetjük az ábra szélességével (tíz képpontnyival kell kevesebbnek lennie, a keret miatt). Ha a szöveg keskenyebb, mint a kép szélessége, befejezzük a ciklust. Ellenkezõ esetben csökkentjük a betûméretet és újra próbálkozunk.
16 óra A $magassag és a $szelesseg változók értékét elfelezve megkapjuk az ábra hozzávetõleges középpontját. A szöveget az ábra középpontjából és a szöveg magasságából, illetve szélességébõl kiszámított eltolással az ábrára írjuk, végül megjelenítjük a képet a böngészõben. A ábrán láthatjuk a program kimenetét. Ezt a kódot egy másik oldal is meghívhatja, egy IMG elem részeként. A következõ részlet egy olyan programot hoz létre, amely lehetõvé teszi az egyes felhasználóknak, hogy saját szöveget jelenítsenek meg az ábrán: 1: <?php 2: if (! isset( $szoveg ) ) 3: $szoveg = "Dinamikus szöveg!"; 4:?> 5: <form action="<? print $PHP_SELF?>" method="post"> 6: <input type="text" name="szoveg"> 7: </form> 8: <p> 9: <img src="14.9.program.php?<? print "szoveg=".urlencode($szoveg)?>"> Amikor a programot meghívjuk, egy olyan keresõkifejezéssel egészítjük ki a hívást, amely tartalmazza a megjelenítendõ szöveget. A tizenkilencedik órában többet is tanulhatunk az információk programról programra való átadásáról ábra Szöveg elhelyezése az imagettfbox() függvény használatával
17 Dinamikus képek kezelése 275 A fenti elemek összegyúrása Készítsünk egy példát az ezen az órán tanult függvények használatával! Tegyük fel, hogy arra kértek bennünket, hogy készítsünk egy dinamikus oszlopgrafikont, amely több címkézett számot hasonlít össze. Az egyes oszlopok alatt a megfelelõ címkének kell lennie. Ügyfelünknek tudnia kell módosítani a grafikon oszlopainak számát, a kép szélességét és magasságát és a grafikont körülvevõ keret méretét. A grafikont fogyasztói szavazáshoz fogják használni, így az adatokat csak látszólagos pontossággal kell megjeleníteni. Egy sokkal részletesebb lebontást az ábrát tartalmazó oldal HTML részében találhatunk. Az oszlopokat és értékeiket a legegyszerûbb módon egy asszociatív tömbben tárolhatjuk. Miután megvan ez a tömb, ki kell számolnunk az oszlopok számát és a tömb legnagyobb értékét: $cellak = array ( "tetszik"=>200, "nem tetszik"=>400, "közömbös"=>900 ); $max = max( $cellak ); $cellaszam = count( $cellak ); Létre kell hoznunk néhány változót, így ügyfelünk egyéni igényeihez igazíthatja az ábrát: $teljesszelesseg = 400; $teljesmagassag = 200; $xmargo = 20; // jobb és bal margó $ymargo = 20; // felsõ és alsó margó $oszlopkoz = 5; // az oszlopok közötti hely $alsokeret = 40; // az ábra alján kimaradó hely å (a margót nem számolva) $betukeszlet = "/usr/local/office52/share/fonts/ å /TrueType/arial.ttf"; 14 Ügyfelünk a változók módosításával meghatározhatja az ábra magasságát és szélességét. Az $xmargo és $ymargo a grafikon körüli margóvastagságot adja meg. Az $oszlopkoz az oszlopok közötti távolságot határozza meg, az $alsokeret változó pedig az oszlopok alatti címkéknek szánt hely nagyságát. Most hogy megvannak ezek az értékek, a némi számolgatás árán belõlük kapott hasznos számokat változókba tesszük:
18 óra $vaszonszelesseg = ( $teljesszelesseg - $xmargo*2 ); $vaszonmagassag = ( $teljesmagassag - $ymargo*2 - $alsokeret ); $xpoz = $xmargo; // a rajzolás kiindulópontja az x tengelyen $ypoz = $teljesmagassag - $ymargo - $alsokeret; // å a rajzolás kiindulópontja az y tengelyen $cellaszelesseg = (int) (( $vaszonszelesseg - ( $oszlopkoz * å ( $cellaszam-1 ) )) / $cellaszam) ; $szovegmeret = (int)($alsokeret); Kiszámítjuk a rajzfelületet (azt a területet, ahová majd az oszlopok kerülnek). A vízszintes összetevõt úgy kapjuk meg, hogy a teljes szélességbõl kivonjuk a margó kétszeresét. A függõleges mérethez az $alsokeret változót is számításba kell vennünk, hogy a címkéknek helyet hagyjunk. Az $xpoz tárolja azt az x koordinátát, amelytõl az oszlopok rajzolását kezdjük, így ennek értékét az $xmargo változó értékére állítjuk, amely a margó értékének vízszintes összetevõjét tárolja. Az oszlopok talppontját tároló $ypoz változó értékét úgy kapjuk meg, ha az ábra teljes magasságából kivonjuk a margót és a címkéknek kihagyott hely nagyságát, amelyet az $alsokeret változóban tároltunk. A $cellaszelesseg az egyes oszlopok szélességét tárolja. Ahhoz, hogy az értékét megkapjuk, számoljuk ki az oszlopok közötti helyek összegét, ezt vonjuk ki a diagram szélességébõl, majd az eredményt osszuk el az oszlopok számával. Kezdetben úgy állítjuk be a szöveg méretét, hogy egyezzen a szöveg számára szabadon maradt terület magasságával (amit az $alsokeret változóban tárolunk). Mielõtt megkezdenénk a munkát az ábrával, meg kell határoznunk a szöveg méretét. Viszont nem tudjuk, milyen szélesek lesznek a címkék és mindenképpen azt szeretnénk, hogy az egyes címkék elférjenek a felettük levõ oszlop szélességén belül. A $cellak tömbön egy ciklus segítségével meghatározzuk a legnagyobb címke méretét: forach( $cellak as $kulcs => $ertek ) { while ( 1 ) { $doboz = ImageTTFbBox( $szovegmeret, 0, $betukeszlet, $kulcs ); $szovegszelesseg = $doboz[2]; if ( $szovegszelesseg < $cellaszelesseg ) break; $szovegmeret ; } }
19 Dinamikus képek kezelése 277 Minden elem esetében egy ciklust kezdve, az imagettfbox() segítségével információt szerzünk a címke méretét illetõen. A kapott értéket a $doboz[2] változóban találhatjuk meg, amit összevetünk a $cellaszelesseg változóval, amely egy oszlop szélességét tartalmazza. A ciklust abban az esetben állítjuk le, ha a szöveg szélessége kisebb, mint az oszlopszélesség. Egyébként pedig csökkentjük a $szovegmeret értékét és újra ellenõrizzük a méreteket. A $szovegmeret addig csökken, míg a tömb összes címkéje kisebb nem lesz az oszlopszélességnél. Most már végre létrehozhatunk egy képazonosítót és elkezdhetünk dolgozni vele. $kep = imagecreate( $teljesszelesseg, $teljesmagassag ); $piros = ImageColorAllocate($kep, 255, 0, 0); $kek = ImageColorAllocate($kep, 0, 0, 255 ); $fekete = ImageColorAllocate($kep, 0, 0, 0 ); forach( $cellak as $kulcs => $ertek ) { $cellamagassag = (int) (($ertek/$max) * $vaszonmagassag); $kozeppont = (int)($xpoz+($cellaszelesseg/2)); imagefilledrectangle( $kep, $xpoz, ($ypoz-$cellamagassag), ($xpoz+$cellaszelesseg), $ypoz, $kek ); $doboz = ImageTTFBox( $szovegmeret, 0, $betukeszlet, $kulcs ); $szovszel = $doboz[2]; ImageTTFText( $kep, $szovegmeret, 0, ($kozeppont- ($szovszel/2)), ($teljesmagassag-$ymargo), $fekete, $betukeszlet, $kulcs ); $xpoz += ( $cellaszelesseg + $oszlopkoz); } imagegif( $kep ); Ezt az imagecreate() függvénnyel tesszük meg, majd kiosztunk néhány színt is. Újra végiglépkedünk a $cellak tömbön. Kiszámítjuk az oszlop magasságát és az eredményt a $cellamagassag-ba helyezzük. Kiszámoljuk a középpont x koordinátáját, amely megegyezik az $xpoz és a fél oszlop szélességének összegével. 14 Az imagefilledrectangle() függvénynek az $xpoz, $ypoz, $cellamagassag és $cellaszelesseg változókat átadva megrajzoljuk az oszlopot.
20 óra A szöveg középre igazításához megint szükségünk van az imagettfbox() függvényre, amelynek eredménytömbjét a $doboz változóban tároljuk. A $doboz[2] értéket fogjuk munkaszélességnek választani, ezt bemásoljuk a $szovszel átmeneti változóba. Most már elegendõ információ áll rendelkezésünkre ahhoz, hogy kiírassuk a címkét. Az x koordináta a $kozeppont változó és a szövegszélesség felének különbsége lesz, az y koordináta pedig az alakzat magasságának és a margónak a különbsége. Megnöveljük az $xpoz változót, felkészülve ezzel a következõ oszlop feldolgozására. A ciklus végeztével megjelenítjük az elkészült képet. A teljes programot a példában láthatjuk, a végeredményt pedig a ábrán program Egy dinamikus oszlopdiagram 1: <?php 2: header("content-type: image/gif"); 3: $cellak = array ( "tetszik"=>200, "nem tetszik"=>400, "közömbös"=>900 ); 4: $max = max( $cellak ); 5: $cellaszam = count( $cellak ); 6: $teljesszelesseg = 300; 7: $teljesmagassag = 200; 8: $xmargo = 20; // jobb és bal margó 9: $ymargo = 20; // fenti és lenti margó 10: $oszlopkoz = 10; // az oszlopok közötti hely 11: $alsokeret = 30; // az ábra alján kimaradó hely (a margót nem számolva) 12: $betukeszlet = "/usr/local/office52/share/fonts/ /TrueType/arial.ttf"; 13: $vaszonszelesseg = ( $teljesszelesseg - $xmargo*2 ); 14: $vaszonmagassag = ( $teljesmagassag - $ymargo*2 - $alsokeret ); 15: $xpoz = $xmargo; // a rajzolás kiindulópontja az x tengelyen 16: $ypoz = $teljesmagassag - $ymargo - $alsokeret; // a rajzolás kiindulópontja az y tengelyen 17: $cellaszelesseg = (int) (( $vaszonszelesseg - ( $oszlopkoz * ( $cellaszam-1 ) )) / $cellaszam) ;
21 Dinamikus képek kezelése program (folytatás) 18: $szovegmeret = (int)($alsokeret); 19: // betûméret kiigazítása 20: forach( $cellak as $kulcs => $ertek ) 21: { 22: while ( 1 ) 23: { 24: $doboz = ImageTTFbBox( $szovegmeret, 0, $betukeszlet, $kulcs ); 25: $szovegszelesseg = abs( $doboz[2] ); 26: if ( $szovegszelesseg < $cellaszelesseg ) 27: break; 28: $szovegmeret ; 29: } 30: } 31: $kep = imagecreate( $teljesszelesseg, $teljesmagassag ); 32: $piros = ImageColorAllocate($kep, 255, 0, 0); 33: $kek = ImageColorAllocate($kep, 0, 0, 255 ); 34: $fekete = ImageColorAllocate($kep, 0, 0, 0 ); 35: $szurke = ImageColorAllocate($kep, 100, 100, 100 ); 36: 37: forach( $cellak as $kulcs => $ertek ) 38: { 39: $cellamagassag = (int) (($ertek/$max) * $vaszonmagassag); 40: $kozeppont = (int)($xpoz+($cellaszelesseg/2)); 41: imagefilledrectangle( $kep, $xpoz, ($ypoz-$cellamagassag), ($xpoz+$cellaszelesseg), $ypoz, $kek ); 42: $doboz = ImageTTFbBox( $szovegmeret, 0, $betukeszlet, $kulcs ); 43: $szovszel = $doboz[2]; 44: ImageTTFText( $kep, $szovegmeret, 0, ($kozeppont-($szovszel/2)), 45: ($teljesmagassag-$ymargo), $fekete, $betukeszlet, $kulcs ); 46: $xpoz += ( $cellaszelesseg + $oszlopkoz); 47: } 48: imagegif( $kep ); 49:?> 14
22 óra ábra Egy dinamikus oszlopdiagram Összefoglalás A GD programkönyvtár PHP-s támogatása lehetõvé teszi, hogy dinamikus oszlopdiagramokat és navigációs elemeket hozhassunk létre, viszonylag könnyen. Ezen az órán megtanultuk, hogyan használjuk az imagecreate() és az imagegif() függvényeket képek létrehozására és megjelenítésére. Azt is megtanultuk, hogyan szerezzünk színazonosítót és hogyan töltsünk ki színnel területeket az imagecolorallocate() és az imagefill() függvényekkel. Megnéztük, hogyan használjunk vonal- és alakzat függvényeket alakzatok körvonalainak megrajzolására és kitöltésére. Megtanultuk, hogyan használjuk a PHP által támogatott FreeType programkönyvtárat a TrueType betûtípusokkal való munkára, valamint elemeztünk egy programot, amelyben egy alakzatra szöveget írtunk és megnéztünk egy példát, amelyben a tanult eljárásokat a gyakorlatban is láthattuk. Kérdések és válaszok Fellépnek-e teljesítménybeli problémák dinamikus képek használata esetén? Egy dinamikusan létrehozott kép lassabban töltõdik be a böngészõbe, mint egy már létezõ fájl. A program hatékonyságától függõen ezt a felhasználó nem feltétlenül veszi észre, de azért a dinamikus képeket módjával használjuk.
23 Dinamikus képek kezelése 281 Mûhely A mûhelyben kvízkérdések találhatók, melyek segítenek megszilárdítani az órában szerzett tudást. A válaszokat az A függelékben helyeztük el. Kvíz 1. Milyen fejlécsort kell a böngészõnek küldenünk a GIF kép létrehozása és megjelenítése elõtt? 2. Milyen függvényt használnánk egy képazonosító elõállításához, amelyet a többi függvénynél használhatunk? 3. Milyen függvényt használnánk a létrehozott GIF kép megjelenítésére? 4. Milyen függvény segítségével szerezhetjük meg a színazonosítót? 5. Melyik függvénnyel rajzolnánk vonalat egy dinamikus képre? 6. Melyik függvénnyel töltenénk ki színnel egy dinamikus alakzatot? 7. Melyik függvényt használhatjuk körív rajzolására? 8. Hogyan rajzoljunk téglalapot? 9. Hogyan rajzoljunk sokszöget? 10. Melyik függvénnyel írnánk egy dinamikus alakzatra (a FreeType programkönyvtár segítségével)? Feladatok Írjunk egy programot, amely egy folyamatjelzõt hoz létre, amely mutatja, mennyi pénz folyt be egy gyûjtés alkalmával az adott célra szükséges pénzbõl. 2. Írjunk egy programot, amely egy fõcímet ábrázoló képet ír ki egy bejövõ ûrlap vagy lekérdezés adataiból. Tegyük lehetõvé, hogy a felhasználó határozza meg a rajzterületet, az elõtér és a háttér színét, valamint az árnyék meglétét és annak méretét.
24
Objektumok és osztályok. Az objektumorientált programozás alapjai. Rajzolás tollal, festés ecsettel. A koordinátarendszer
Objektumok és osztályok Az objektumorientált programozás alapjai Rajzolás tollal, festés ecsettel A koordinátarendszer A vektorgrafikában az egyes grafikus elemeket (pontokat, szakaszokat, köröket, stb.)
Programozási nyelvek 2. előadás
Programozási nyelvek 2. előadás Logo forgatás tétel Forgatás tétel Ha az ismétlendő rész T fok fordulatot végez és a kezdőhelyére visszatér, akkor az ismétlések által rajzolt ábrák egymás T fokkal elforgatottjai
Táblázatkezelés 2. - Adatbevitel, szerkesztés, formázás ADATBEVITEL. a., Begépelés
Táblázatkezelés 2. - Adatbevitel, szerkesztés, formázás ADATBEVITEL a., Begépelés Az adatok bevitelének legegyszerűbb módja, ha a táblázat kijelölt cellájába beírjuk őket. - számok (numerikus adatok) -
A Vonallánc készlet parancsai lehetővé teszik vonalláncok és sokszögek rajzolását.
11. Geometriai elemek 883 11.3. Vonallánc A Vonallánc készlet parancsai lehetővé teszik vonalláncok és sokszögek rajzolását. A vonallánc egy olyan alapelem, amely szakaszok láncolatából áll. A sokszög
A Paint program használata
A Paint program használata A Windows rendszerbe épített Paint program segítségével képeket rajzolhat, színezhet és szerkeszthet. A Paint használható digitális rajztáblaként. Egyszerű képek és kreatív projektek
Az MS Excel táblázatkezelés modul részletes tematika listája
Az MS Excel táblázatkezelés modul részletes tematika listája A táblázatkezelés alapjai A táblázat szerkesztése A táblázat formázása A táblázat formázása Számítások a táblázatban Oldalbeállítás és nyomtatás
HTML alapok. A HTML az Internetes oldalak nyelve.
A HTML az Internetes oldalak nyelve. HTML alapok Karakteres szövegszerkesztővel (pl. Jegyzettömb) szerkeszthető. FONTOS, hogy az elkészült oldal kiterjesztése ne txt, hanem html legyen! Felépítése: Két
Fájlkezelés. Fájlok beágyazása az include() függvénnyel
Fájlkezelés I.1. Fájlok beágyazása az include() függvénnyel Az include() függvény lehetıséget ad arra, hogy fájlt ágyazzunk be a PHP dokumentumokba. A fájlban szereplı PHP kód úgy hajtódik végre, mintha
4. Lecke. Körök és szabályos sokszögek rajzolása. 4.Lecke / 1.
4.Lecke / 1. 4. Lecke Körök és szabályos sokszögek rajzolása Az előző fejezetekkel ellentétben most nem újabb programozási utasításokról vagy elvekről fogunk tanulni. Ebben a fejezetben a sokszögekről,
Regresszió számítás. Tartalomjegyzék: GeoEasy V2.05+ Geodéziai Kommunikációs Program
Regresszió számítás GeoEasy V2.05+ Geodéziai Kommunikációs Program DigiKom Kft. 2006-2010 Tartalomjegyzék: Egyenes x változik Egyenes y változik Egyenes y és x változik Kör Sík z változik Sík y, x és z
Információs technológiák 1. Gy: HTML alapok
Információs technológiák 1. Gy: HTML alapok 1/53 B ITv: MAN 2017.09.28 Hogyan kezdjünk hozzá? Készítsünk egy mappát, legyen a neve mondjuk: Web Ez lesz a munkakönyvtárunk, ide kerül majd minden létrehozott
Lehet hogy igaz, de nem biztos. Biztosan igaz. Lehetetlen. A paralelogrammának van szimmetria-középpontja. b) A trapéznak két szimmetriatengelye van.
Geometria, sokszögek, szögek, -, 2004_01/5 Lili rajzolt néhány síkidomot: egy háromszöget, egy deltoidot, egy paralelogrammát és egy trapézt. A következő állítások ezekre vonatkoznak. Tegyél * jelet a
Java és web programozás
Budapesti M szaki Egyetem 2015. 03. 18. 6. El adás Graka Java-ban Emlékezzünk kicsit vissza a tikz-re: \begin{tikzpicture \draw (0,0) node[draw,circle] (S) {s; \draw (3,2) node[draw,circle] (A) {a; \draw
Kedves versenyző, az alábbi feladatok illetve egy interneten kitöltendő teszt megoldására 90 perc áll rendelkezésedre.
Kedves versenyző, az alábbi feladatok illetve egy interneten kitöltendő teszt megoldására 90 perc áll rendelkezésedre. Készítsd egy mappát, amelynek a neve a versenyen használt kódszámod legyen! A nyers
Programozási nyelvek 1. előadás
Programozási nyelvek 1. előadás I. A nyelv története Logo Seymour Papert, 1968,1969 - szövegkezelés, M.I.T. Később: grafika, mikroszámítógépekre átdolgozva Cél: minél kisebb gyerekeknek is, természetes
I. Internetes keresési feladatok (ajánlott idő: 20 perc)
I. Internetes keresési feladatok (ajánlott idő: 20 perc) A talált oldalak internet címét (URL) másold ki egy szöveges dokumentumba és mentsd Csapatnev_internet néven! A konkrét válaszokat ide a papírra
TABULÁTOROK TÁBLÁZATOK KÉSZÍTÉSE. A táblázatok készítésének lehetőségei:
TABULÁTOROK A tabulátorokat a szavak soron belüli pontos pozicionálására használjuk. A tabulátorokat valamilyen pozícióhoz kötjük. A pozíciók beállíthatók vonalzón vagy a Formátum menü Tabulátorok menüpontjának
Táblázatok. Feladatok Szegélyek és cellák. 1. feladat. 2. feladat
Táblázatok A táblázatok cellákat tartalmazó sorokból és oszlopokból épülnek fel. A cellában szöveg, szövegközi grafikák és egyéb táblázatok is elhelyezhetők. A táblázat táblázatba történő beszúrásánál
Egyszerű példaprogramok gyakorláshoz
Egyszerű példaprogramok gyakorláshoz Tartalom Feladatok... 2 For ciklus... 2 Szorzótábla... 2 Szorzótábla részlet... 3 Pascal háromszög... 4 Pascal háromszög szebben... 5 DO-LOOP ciklus... 6 Véletlen sorsolás...
Mechatronika segédlet 3. gyakorlat
Mechatronika segédlet 3. gyakorlat 2017. február 20. Tartalom Vadai Gergely, Faragó Dénes Feladatleírás... 2 Fogaskerék... 2 Nézetváltás 3D modellezéshez... 2 Könnyítés megvalósítása... 2 A fogaskerék
5.osztály 1.foglalkozás. 5.osztály 2.foglalkozás. hatszögéskörök
5.osztály 1.foglalkozás 5.osztály 2.foglalkozás hatszögéskörök cseresznye A cseresznye zöld száránál az egyeneshez képest 30-at kell fordulni! (30 fokot). A cseresznyék között 60 egység a térköz! Szétszedtem
Lakóház tervezés ADT 3.3-al. Segédlet
Lakóház tervezés ADT 3.3-al Segédlet A lakóház tervezési gyakorlathoz főleg a Tervezés és a Dokumentáció menüket fogjuk használni az AutoDesk Architectural Desktop programból. A program centiméterben dolgozik!!!
Bevezetés a programozásba II 1. gyakorlat. A grafikus könyvtár használata, alakzatok rajzolása
Pázmány Péter Katolikus Egyetem Információs Technológiai Kar Bevezetés a programozásba II 1. gyakorlat A grafikus könyvtár használata, alakzatok rajzolása 2014.02.10. Giachetta Roberto groberto@inf.elte.hu
PHP-MySQL. Adatbázisok gyakorlat
PHP-MySQL Adatbázisok gyakorlat Weboldalak és adatbázisok Az eddigiek során megismertük, hogyan lehet a PHP segítségével dinamikus weblapokat készíteni. A dinamikus weboldalak az esetek többségében valamilyen
Programozás 7.o Az algoritmus fogalma (ismétlés)
Programozás 7.o Az algoritmus fogalma (étlés) Az algoritmus olyan leírás, felsorolás, amely az adott feladat megoldásához szükséges jól definiált utasítások s számú sorozata. Egy probléma megoldására kidolgozott
A Microsoft OFFICE. EXCEL táblázatkezelő. program alapjai. 2013-as verzió használatával
A Microsoft OFFICE EXCEL táblázatkezelő program alapjai 2013-as verzió használatával A Microsoft Office programcsomag táblázatkezelő alkalmazása az EXCEL! Aktív táblázatok készítésére használjuk! Képletekkel,
Az MS Word szövegszerkesztés modul részletes tematika listája
Az MS Word szövegszerkesztés modul részletes tematika listája A szövegszerkesztés alapjai Karakter- és bekezdésformázás Az oldalbeállítás és a nyomtatás Tabulátorok és hasábok A felsorolás és a sorszámozás
mintásfal 60 40 2 2 mintásfal :m :sz :dbjobbra :dbfel
6.osztály 1.foglalkozás 6.osztály 2.foglalkozás kocka kockafal :db minta Készítsd el ezt a mintát! A minta hosszú oldala 60 a rövid oldala 40 egység hosszú. A hosszú oldal harmada a négyzet oldala! A háromszög
A program a köröket és köríveket az óramutató járásával ellentétes irányban rajzolja meg.
894 11.4. Kör és körív 11.4. Kör és körív A program a köröket és köríveket az óramutató járásával ellentétes irányban rajzolja meg. 11.4.1. Kör/Körív tulajdonságai A kör vagy körív létrehozása előtt állítsa
Tájékoztató. Használható segédeszköz: -
A 35/2016. (VIII. 31.) NFM rendelet szakmai és vizsgakövetelménye alapján. Szakképesítés, azonosító száma és megnevezése 54 481 06 Informatikai rendszerüzemeltető Tájékoztató A vizsgázó az első lapra írja
Programozási nyelvek 4. előadás
Programozási nyelvek 4. előadás Fa rajzolása rekurzívan Logo fa variációk A fa egy törzsből áll, amelynek tetején két ág nő ki, s mindkettő tulajdonképpen egy-egy alacsonyabb, rövidebb törzsű fa. Az ábrában
4. modul - Táblázatkezelés
4. modul - Táblázatkezelés Az alábbiakban ismertetjük a 4. modul (Táblázatkezelés) syllabusát, amely a gyakorlati modulvizsga követelményrendszere. A modul célja Ez a modul a táblázatkezeléssel kapcsolatos
1. tétel. 1. Egy derékszögű háromszög egyik szöge 50, a szög melletti befogója 7 cm. Mekkora a háromszög átfogója? (4 pont)
1. tétel 1. Egy derékszögű háromszög egyik szöge 50, a szög melletti befogója cm. Mekkora a háromszög átfogója? (4 pont). Adott az ábrán két vektor. Rajzolja meg a b, a b és az a b vektorokat! (6 pont)
Rácsvonalak parancsot. Válasszuk az Elsődleges függőleges rácsvonalak parancs Segédrácsok parancsát!
Konduktometriás titrálás kiértékelése Excel program segítségével (Office 2007) Alapszint 1. A mérési adatokat írjuk be a táblázat egymás melletti oszlopaiba. Az első oszlopba kerül a fogyás, a másodikba
A 2018/2019 tanévi Országos Középiskolai Tanulmányi Verseny első fordulójának feladatai. INFORMATIKA I. (alkalmazói) kategória
Oktatási Hivatal A 2018/2019 tanévi Országos Középiskolai Tanulmányi Verseny első fordulójának feladatai INFORMATIKA I. (alkalmazói) kategória Nem minden részfeladatot írunk le a feladatszövegben, többet
3. Az ősember. I n f o r m a t i k a é r e t t s é g i, k ö z é p s z i n t, m á j u s 1 9.
1. Színház Készítse el a mintán látható színházi plakátot! A következő feladatok ehhez nyújtanak útmutatást! A plakát A5-ös méretű lesz, ezért egy fekvő A4-es lapra két példányt helyezzen el. 1. A szöveg
A 10/2007 (II. 27.) 1/2006 (II. 17.) OM
A 10/2007 (II. 27.) SzMM rendelettel módosított 1/2006 (II. 17.) OM rendelet Országos Képzési Jegyzékről és az Országos Képzési Jegyzékbe történő felvétel és törlés eljárási rendjéről alapján. Szakképesítés,
3. modul - Szövegszerkesztés
3. modul - Szövegszerkesztés Érvényes: 2009. február 1-jétől Az alábbiakban ismertetjük a 3. modul (Szövegszerkesztés) syllabusát, amely a gyakorlati vizsga alapját képezi. A modul célja Ezen a vizsgán
Érettségi feladatok: Trigonometria 1 /6
Érettségi feladatok: Trigonometria 1 /6 2003. Próba 14. Egy hajó a Csendes-óceán egy szigetéről elindulva 40 perc alatt 24 km-t haladt észak felé, majd az eredeti haladási irányhoz képest 65 -ot nyugat
6.1.1.2 Új prezentáció létrehozása az alapértelmezés szerinti sablon alapján.
6. modul Prezentáció A modul a prezentációkészítéshez szükséges ismereteket kéri számon. A sikeres vizsga követelményei: Tudni kell prezentációkat létrehozni és elmenteni különböző fájl formátumokban A
1.1.1 Dátum és idő függvények
1.1.1 Dátum és idő függvények Azt már tudjuk, hogy két dátum különbsége az eltelt napok számát adja meg, köszönhetően a dátum tárolási módjának az Excel-ben. Azt is tudjuk a korábbiakból, hogy a MA() függvény
1. kép. A Stílus beállítása; új színskála megadása.
QGIS Gyakorló Verzió: 1.7. Wroclaw Cím: A Print composer használata és a címkézés. Minta fájl letöltése innen: http://www.box.net/shared/87p9n0csad Egyre több publikációban szerepelnek digitális térképek,
Táblázatok. Táblázatok beszúrása. Cellák kijelölése
Táblázatok Táblázatok beszúrása A táblázatok sorokba és oszlopokba rendezett téglalap alakú cellákból épülnek fel. A cellák tartalmazhatnak képet vagy szöveget. A táblázatok használhatók adatok megjelenítésére,
Oktatási segédanyag. Weboldalszerkesztési gyakorlatok
Oktatási segédanyag Weboldalszerkesztési gyakorlatok Bevezetés A korábbi oktatási segédanyagokban megismertük a weboldalszerkesztés gyakorlatát. Ennek a segédanyagnak a célja, hogy gyakorlati példákon
11.5. Ellipszis és ellipszisív
11. Geometriai elemek 907 11.5. Ellipszis és ellipszisív Egy ellipszist geometriailag a fókuszpontjaival, valamint a nagy- és kistengelyei hosszának és irányának megadásával, egy ellipszisívet pedig ugyanezekkel
Segédanyag a WORD használatához
Segédanyag a WORD használatához Tartalom Kezdőlap:... 2 Beszúrás... 3 Tervezés... 3 Lapelrendezés... 4 Hivatkozás... 4 Objektumok saját menüi... 5 Táblázat... 5 Képek... 5 Alakzatok... 5 Menün kívüli tudnivalók
Word V. tabulátortípus meg nem jelenik: Tabulátor - balra, Tabulátor - jobbra,
Word V. Tabulátorok A tabulátorok (tabulátorhely: A vízszintes vonalzó azon pontja, amely meghatározza a szövegbehúzást, illetve a szövegoszlop kezdetét.), segítségével a szöveget balra, jobbra, középre,
Táblázatkezelés Syllabus 5.0 A syllabus célja 2014 ECDL Alapítvány Jogi nyilatkozat A modul célja
Táblázatkezelés Syllabus 5.0 A syllabus célja Az alábbiakban ismertetjük a Táblázatkezelés modul követelményeit, amely a modulvizsga alapját is képezi. 2014 ECDL Alapítvány A syllabus az ECDL Alapítvány
Programozási nyelvek 3. előadás
Programozási nyelvek 3. előadás Logo sokszög variációk Sokszög rekurzívan Az N oldalú sokszögvonal 1 oldalból és egy N-1 oldalú sokszögvonalból áll. eljárás reksokszög :n :hossz :szög előre :hossz balra
Csima Judit március 9. és 16.
Grafika Csima Judit BME, VIK, Számítástudományi és Információelméleti Tanszék 2017. március 9. és 16. Csima Judit Grafika 1 / 18 Grafika általában Grafika az R-ben Van néhány alapvető package az ábrázolásra:
Képek a HTML oldalon
Képek a HTML oldalon Utolsó módosítás: 11/22/2004 13:07:28 Háttérkép Ahhoz, hogy az adott oldal háttérképpel rendelkezzen, a részben el kell helyeznünk a background="kep" paramétert, ahol a kép
A 10/2007 (II. 27.) 1/2006 (II. 17.) OM
A 10/2007 (II. 27.) SzMM rendelettel módosított 1/2006 (II. 17.) OM rendelet Országos Képzési Jegyzékről és az Országos Képzési Jegyzékbe történő felvétel és törlés eljárási rendjéről alapján. Szakképesítés,
72-74. Képernyő. monitor
72-74 Képernyő monitor Monitorok. A monitorok szöveg és grafika megjelenítésére alkalmas kimeneti (output) eszközök. A képet képpontok (pixel) alkotják. Általános jellemzők (LCD) Képátló Képarány Felbontás
Területi primitívek: Zárt görbék által határolt területek (pl. kör, ellipszis, poligon) b) Minden belső pont kirajzolásával (kitöltött)
Grafikus primitívek kitöltése Téglalap kitöltése Poligon kitöltése Kör, ellipszis kitöltése Kitöltés mintával Grafikus primitívek kitöltése Területi primitívek: Zárt görbék által határolt területek (pl.
PLC Versenyfeladat. XIV. Országos Irányítástechnikai Programozó Verseny Budapest, március Összeállította az EvoPro Kft.
PLC Versenyfeladat XIV. Országos Irányítástechnikai Programozó Verseny Budapest, 2008. március 19-21. Összeállította az EvoPro Kft. Általános bemutatás A feladatban szereplő eszköz egy 8x8 képpontos LED-mátrix
2. Készítsen awk szkriptet, amely kiírja az aktuális könyvtár összes alkönyvtárának nevét, amely februári keltezésű (bármely év).
1. fejezet AWK 1.1. Szűrési feladatok 1. Készítsen awk szkriptet, ami kiírja egy állomány leghosszabb szavát. 2. Készítsen awk szkriptet, amely kiírja az aktuális könyvtár összes alkönyvtárának nevét,
Segédlet: Főfeszültségek meghatározása Mohr-féle feszültségi körök alkalmazásával
Segédlet: Főfeszültségek meghatározása Mohr-féle feszültségi körök alkalmazásával Készítette: Dr. Kossa Attila (kossa@mm.bme.hu) BME, Műszaki Mechanikai Tanszék 212. október 16. Frissítve: 215. január
Függvények Függvények
teknőc parancsok ismétlése függvények fogalma, használata grafikon rajzoló program Reversi játékprogram függvények lokális változói rekurzió és fraktál-szerű ábrák rajzolása Emlékeztető töbszörös elágazás
Próba érettségi feladatsor április 09. I. RÉSZ. 1. Hány fokos az a konkáv szög, amelyiknek koszinusza: 2
Név: osztály: Próba érettségi feladatsor 010 április 09 I RÉSZ Figyelem! A dolgozatot tollal írja; az ábrákat ceruzával is rajzolhatja A megoldást minden esetben a feladat szövege melletti fehér hátterű
Táblázatok kezelése. 1. ábra Táblázat kezelése menüből
Táblázat beszúrása, létrehozása A táblázatok készítésének igénye már a korai szövegszerkesztőkben felmerült, de ezekben nem sok lehetőség állt rendelkezésre. A mai szövegszerkesztőket már kiegészítették
Java grafikai lehetőségek
Szerver oldali Java programozás 2007-08/II. 3. óra Java grafikai lehetőségek Java grafikai lehetőségek Képek generálása servletekkel szenasi.sandor@nik.bmf.hu Adatbázisok elérése Témakörök Java grafikai
Országos Szakiskolai Közismereti Tanulmányi Verseny 2005/2006 SZÁMÍTÁSTECHNIKA
Országos Szakiskolai Közismereti Tanulmányi Verseny 2005/2006 SZÁMÍTÁSTECHNIKA II. (regionális) forduló 2006. február 17... Helyszín fejbélyegzője Versenyző Pontszám Kódja Elérhető Elért Százalék. 100..
Cikktípusok készítése a Xarayában
Cikktípusok készítése a Xarayában A Xaraya legfontosabb tulajdonsága az egyedi cikktípusok egyszerű készítésének lehetősége. Ezzel kiküszöbölhető egyedi modulok készítése, hiszen néhány kattintással tetszőleges
Megyei tervezést támogató alkalmazás
TeIR (Területfejlesztési és Területrendezési Információs Rendszer) Megyei tervezést támogató alkalmazás Felhasználói útmutató 2015. május Tartalomjegyzék 1. BEVEZETŐ... 3 2. AZ ALKALMAZÁS BEMUTATÁSA...
Készítette: niethammer@freemail.hu
VLogo VRML generáló program Készítette: Niethammer Zoltán niethammer@freemail.hu 2008 Bevezetés A VLogo az általános iskolákban használt Comenius Logo logikájára épülő programozási nyelv. A végeredmény
Használati utasítás a Betafence.lib GDL könyvtár használatához
Használati utasítás a Betafence.lib GDL könyvtár használatához Első lépésként töltsük be az ArchiCAD könyvtárkezelőjében a Betafence.lib könyvtárat (Fájl/Könyvtárkezelő). A könyvtárban található elemek
Szövegszerkesztés alapok WORD Formázások
Szövegszerkesztés alapok WORD Formázások A formázás sorrendje 1. Begépelem a szöveget folyamatosan 2. Helyesírást ellenőrzök 3. Entert (bekezdés) vagy Shift + Entert ütök 4. Formázok KIJELÖLÖM A FORMÁZANDÓ
Név Magasság Szintmagasság tető 2,700 koszorú 0,300 térdfal 1,000 födém 0,300 Fsz. alaprajz 2,700 Alap -0,800
Építész Informatika Batyu Előveszünk egy Új lapot 1. Szintek beállítása Lenullázzuk!!!!! A táblázat kitöltését az Alap szinten kezdjük az alap alsó síkjának megadásával. (-0,800) Beírni csak a táblázatba
Feladatok megoldásai
1. Az oszlopszélességet az oszlopszegélyre való dupla kattintással állítsuk be! Mit tapasztalunk? Az oszlopszegélyre való dupla kattintáskor az Excel az oszlopban található leghosszabb bejegyzés hosszúsága
Az egyenes egyenlete: 2 pont. Az összevont alak: 1 pont. Melyik ábrán látható e függvény grafikonjának egy részlete?
1. Írja fel annak az egyenesnek az egyenletét, amely áthalad az (1; 3) ponton, és egyik normálvektora a (8; 1) vektor! Az egyenes egyenlete: 2. Végezze el a következő műveleteket, és vonja össze az egynemű
Gábor Dénes Számítástechnikai Emlékverseny 2005/2006 Alkalmazói kategória, III. korcsoport Második forduló
Gábor Dénes Számítástechnikai Emlékverseny 2005/2006 Alkalmazói kategória, III. korcsoport Második forduló Kedves Versenyző! A három feladat megoldására 3 óra áll rendelkezésedre. A feladatok megoldásához
Imagine Logo Tanmenet évfolyam
Imagine Logo Tanmenet 5. 6. 7. évfolyam 5. évfolyam 18. óra: Algoritmus fogalma, hétköznapi algoritmusok. Tkv. 72-73. oldal feladatai + Imagine Logo Demóválasztás (Játékok) 19. óra: Térbeli tájékozódást
2. Adott a valós számok halmazán értelmezett f ( x) 3. Oldja meg a [ π; π] zárt intervallumon a. A \ B = { } 2 pont. függvény.
1. Az A halmaz elemei a ( 5)-nél nagyobb, de 2-nél kisebb egész számok. B a pozitív egész számok halmaza. Elemeinek felsorolásával adja meg az A \ B halmazt! A \ B = { } 2. Adott a valós számok halmazán
Tamás Ferenc: Nevezetes szögek szögfüggvényei
Tamás Ferenc: Nevezetes szögek szögfüggvényei A derékszögű háromszögekben könnyedén fel lehet írni a nevezetes szögek szögfüggvényeit. Megjegyezni viszont nem feltétlenül könnyű! Erre van egy könnyen megjegyezhető
A tanulók oktatási azonosítójára és a két mérési területen elér pontszámukra lesz szükség az elemzéshez.
Útmutató az idegen nyelvi mérés adatainak elemzéshez készült Excel táblához A református iskolák munkájának megkönnyítése érdekében készítettünk egy mintadokumentumot (Idegen nyelvi mérés_intézkedési tervhez
Statisztikai szoftverek esszé
Statisztikai szoftverek esszé Csillag Renáta 2011. Helyzetfelmérés Egy internetszolgáltató egy havi adatforgalmát vizsgáltam. A táblázatok az előfizetők letöltési forgalmát tartalmazzák, napi bontásban,
Az országos mérések feldolgozása, tapasztalatai
Az országos mérések feldolgozása, tapasztalatai Tartalomjegyzék Bevezetés 3 1. Martin János Szakképző Iskola Miskolc 4 1.1. Az OKM 2006 FIT-jelentés elemzése és iskolai tapasztalatai 4 1.2. Egyéni fejlesztési
Egyszerűbb a Google keresőbe beírni a Sharepoint Designer 2007 letöltés kulcsszavakat és az első találat erre a címre mutat.
A feladat megoldásához a Sharepoint Designer 2007 programot használjuk, mely ingyenesen letölthető a Microsoft weboldaláról. Az érettségi aktuális szoftverlistája alapján az Expression Web 2, az Expression
Fatömegbecslési jegyzőkönyvek
Fatömegbecslési jegyzőkönyvek ERDŐGAZDÁLKODÁS/FAHASZNÁLAT/FATÖMEGBECSLÉSI JEGYZŐKÖNYVEK A fatömegbecslési jegyzőkönyvek erdőrészlethez kapcsolódnak. Egy erdőrészlethez több jegyzőkönyv készíthető. Egy
Diagramok/grafikonok használata a 2003-as verzióban
Diagramok/grafikonok használata Diagram beillesztése A prezentációnkban, előadásunkban gyakran használunk számokat, kimutatásokat, ezeknek a nyers felsorolása helyett érdemes használni diagramokat, grafikonokat.
Informatikus informatikus 54 481 04 0010 54 07 Térinformatikus Informatikus É 1/6
A 10/2007 (II. 27.) SzMM rendelettel módosított 1/2006 (II. 17.) OM rendelet Országos Képzési Jegyzékről és az Országos Képzési Jegyzékbe történő felvétel és törlés eljárási rendjéről alapján. Szakképesítés,
A számítógép beállításainak megváltoztatása
Megjelenés és témák Először tekintsük át, hogy hogyan lehet a képernyőn megjelenő elemek küllemét módosítani. Válasszuk a Start menü Vezérlőpultban a Megjelenés és témák hivatkozást. Itt kattintsunk a
Játékszabály. Logikai játék 2 5 fő részére 7 éven felülieknek 1 játszma időtartama kb. 45 perc. A doboz tartalma:
Játékszabály Logikai játék 2 5 fő részére 7 éven felülieknek 1 játszma időtartama kb. 45 perc A doboz tartalma: 75 fakocka (15 15 db öt színből) 5 db kétoldalú játéktábla pontozótábla 5 db pontszám jelölő
Időjárási csúcsok. Bemenet. Kimenet. Példa. Korlátok. Nemes Tihamér Nemzetközi Informatikai Tanulmányi Verseny, 2-3. korcsoport
Időjárási csúcsok Ismerjük N napra a déli hőmérséklet értékét. Lokálisan melegnek nevezünk egy napot (az első és az utolsó kivételével), ha az aznap mért érték nagyobb volt a két szomszédjánál, lokálisan
A Nobel díj története és a magyar fizikai Nobel díjasok
1. feladat A Nobel díj története és a magyar fizikai Nobel díjasok A weblapok híres magyar tudósok fényképeit és rövid életrajzukat kell, hogy tartalmazzák. A tudosok könyvtárban találod a meg a képeket
Gábor Dénes Számítástechnikai Emlékverseny 2009/2010 Alkalmazói kategória, I. korcsoport Második forduló
Gábor Dénes Számítástechnikai Emlékverseny 2009/2010 Alkalmazói kategória, I. korcsoport Második forduló Kedves Versenyző! A feladatok megoldását beküldheted: CD-n az azonosító kódnak megfelelő könyvtárban.
Egyenes mert nincs se kezdő se végpontja
Szakasz mert van két végpontja Egyenes mert nincs se kezdő se végpontja Tört vonal Szög mert van két szára és csúcsa Félegyenes mert van egy kezdőpontja 5 1 1 Két egyenes egymásra merőleges ha egymással
Összetett feladatok. Föld és a Hold
1. feladat Összetett feladatok Föld és a Hold Készíts weblapot, ahol a Földet és a Holdat mutatod be! A weblaphoz tartozó nyers szöveg a fold.txt és a hold.txt tartalmazza. A forrásban megtalálod a fold.jpg
HTML é s wéblapféjlészté s
HTML é s wéblapféjlészté s 1. Melyik országból ered a hipertext-es felület kialakítása? USA Japán Svájc 2. Webfejlesztéskor ha a site-on belül hivatkozunk egy file-ra, akkor az elérési útnak... relatívnak
Bevezető. Mi is az a GeoGebra? Tények
Bevezető Mi is az a GeoGebra? dinamikus matematikai szoftver könnyen használható csomagolásban az oktatás minden szintjén alkalmazható tanításhoz és tanuláshoz egyaránt egyesíti az interaktív geometriát,
PHP. Adatbázisok gyakorlat
PHP Adatbázisok gyakorlat Mi a PHP? A PHP (PHP: Hypertext Preprocessor) egy nyílt forráskódú, számítógépes szkriptnyelv, legfőbb felhasználási területe a dinamikus weboldalak készítése. A PHP-kódunk általában
33 346 01 1000 00 00 Irodai asszisztens Irodai asszisztens. 33 346 01 0100 31 02 Gépíró, szövegszerkesztő Irodai asszisztens
A 10/2007 (II. 27.) SzMM rendelettel módosított 1/2006 (II. 17.) OM rendelet Országos Képzési Jegyzékről és az Országos Képzési Jegyzékbe történő felvétel és törlés eljárási rendjéről alapján. Szakképesítés,
48. ORSZÁGOS TIT KALMÁR LÁSZLÓ MATEMATIKAVERSENY Megyei forduló HETEDIK OSZTÁLY MEGOLDÁSOK = = 2019.
8. ORSZÁGOS TIT KALMÁR LÁSZLÓ MATEMATIKAVERSENY Megyei forduló HETEDIK OSZTÁLY MEGOLDÁSOK 1. Bizonyítsd be, hogy 019 db egymást követő pozitív egész szám közül mindig kiválasztható 19 db úgy, hogy az összegük
9. Fényhullámhossz és diszperzió mérése jegyzőkönyv
9. Fényhullámhossz és diszperzió mérése jegyzőkönyv Zsigmond Anna Fizika Bsc II. Mérés dátuma: 008. 11. 1. Leadás dátuma: 008. 11. 19. 1 1. A mérési összeállítás A méréseket speciális szögmérő eszközzel
Diagram formázása. A diagram címének, a tengelyek feliratainak, jelmagyarázatának, adatfeliratainak formázása
A diagram címének, a tengelyek feliratainak, jelmagyarázatának, adatfeliratainak formázása Ha ezen elemeknek a betűtípusát, betűstílusát, betűméretét, betűszínét és az elem hátterét akarjuk formázni, akkor
1. Olvassuk be két pont koordinátáit: (x1, y1) és (x2, y2). Határozzuk meg a két pont távolságát és nyomtassuk ki.
Számítás:. Olvassuk be két pont koordinátáit: (, y) és (2, y2). Határozzuk meg a két pont távolságát és nyomtassuk ki. 2. Olvassuk be két darab két dimenziós vektor komponenseit: (a, ay) és (b, by). Határozzuk
Rajz 02 gyakorló feladat
Rajz 02 gyakorló feladat Alkatrészrajz készítése A feladat megoldásához szükséges fájlok: Rjz02k.ipt Feladat: Készítse el az alábbi ábrán látható tengely alkatrészrajzát! A feladat célja: Az alkatrész
Megoldások IV. osztály
Bolyai Farkas Elméleti Líceum Marosvásárhely, 2015. március 20-22. Megoldások IV. osztály 1. Számkeresztrejtvény: Az alábbi keresztrejtvény ábra abban különbözik a hagyományos keresztrejtvényektől, hogy
Tájékoztató. Használható segédeszköz: -
A 35/2016. (VIII. 31.) NFM rendelet szakmai és vizsgakövetelménye alapján. Szakképesítés, azonosítószáma és megnevezése 54 213 05 Szoftverfejlesztő Tájékoztató A vizsgázó az első lapra írja fel a nevét!
Cohen-Sutherland vágóalgoritmus
Vágási algoritmusok Alapprobléma Van egy alakzatunk (szakaszokból felépítve) és van egy "ablakunk" (lehet a monitor, vagy egy téglalap alakú tartomány, vagy ennél szabálytalanabb poligon által határolt