1 00:00:00,000 --> 00:00:12,240 >> [Seinm ceoil] 2 00:00:12,240 --> 00:00:15,870 >> ROB BOWDEN: Dia duit, Tá mé Rob, a ligean ar iarracht seo ar do mhéid. 3 00:00:15,870 --> 00:00:21,100 Mar sin, tá muid ag dul arís chun tús a chur leis go bunúsach cóip den ní féidir dí, agus 4 00:00:21,100 --> 00:00:22,860 dhéanamh ar roinnt athruithe. 5 00:00:22,860 --> 00:00:26,280 Tabhair faoi deara láithreach a fheiceann muid athrú, i gcás ina in ionad seiceála a fheiceáil má 6 00:00:26,280 --> 00:00:30,440 argc Ní comhionann 3, ba mhaith linn a sheiceáil má dhéanann argc cothrom 4, ós rud é 7 00:00:30,440 --> 00:00:34,350 anois nach bhfuil againn ach ag cur i infile agus ar comhbhrí, ach táimid ag cur freisin i 8 00:00:34,350 --> 00:00:38,980 n, a bhfuil an méid a bhfuil muid scálú an íomhá bunaidh. 9 00:00:38,980 --> 00:00:44,340 Nuair a bhíonn muid cinnte de sin, is féidir linn ach n thiontú go slánuimhir baint úsáide atoi. 10 00:00:44,340 --> 00:00:48,760 >> Mar sin, anois táimid ag dul a chruthú roinnt ailiasanna, ach glaoch ARGV 2 infile, agus 11 00:00:48,760 --> 00:00:54,240 ARGV 3 comhbhrí, mar gheall ar ARGV 2 agus ARGV 3 Ní ainmneacha an-cabhrach atá. 12 00:00:54,240 --> 00:00:58,510 Anois, ba mhaith linn a sheiceáil a dhéanamh cinnte go n laistigh de theorainneacha táimid ag súil, mar sin an 13 00:00:58,510 --> 00:01:02,910 Sonraíonn spec go má tá sé níos lú ná nó cothrom le nialas, nó níos mó ná 100, 14 00:01:02,910 --> 00:01:08,580 ansin go fhachtóir Athraigh neamhbhailí, agus ba chóir dúinn rabhadh an t-úsáideoir sin. 15 00:01:08,580 --> 00:01:13,090 >> Nuair a bhíonn muid thar gach sin, is féidir linn ar deireadh oscailte ár infile, agus ní mór dúinn 16 00:01:13,090 --> 00:01:16,270 earráid seiceáil a dhéanamh cinnte go bhfuil an Ní raibh oscailt theipeann ar chúis éigin. 17 00:01:16,270 --> 00:01:19,860 Ní mór dúinn freisin a oscailt ar ár comhbhrí, agus arís earráid seiceáil a dhéanamh cinnte go 18 00:01:19,860 --> 00:01:21,250 Ní raibh theipeann ar chúis éigin. 19 00:01:21,250 --> 00:01:26,270 Ach a bheith cinnte má tá an oscailt an ar comhbhrí Theip gur gá dúinn a dhúnadh 20 00:01:26,270 --> 00:01:29,040 an infile, a osclaíodh cheana féin. 21 00:01:29,040 --> 00:01:33,690 >> Mar sin, ag glacadh leis nach raibh theipeann, ansin we're - díreach mar atá sa ní féidir dí-- 22 00:01:33,690 --> 00:01:36,140 ag dul a léamh sa cheanntásc ón infile. 23 00:01:36,140 --> 00:01:40,130 Táimid ag dul a dhéanamh cinnte go bhfuil sé bailí bitmap, ach anois táimid ag dul a dhéanamh ar roinnt 24 00:01:40,130 --> 00:01:41,620 rudaí le beagán difriúil. 25 00:01:41,620 --> 00:01:44,870 Mar sin, an chéad, táimid ag dul a iarraidh a cuimhneamh ar an leithead agus airde bunaidh 26 00:01:44,870 --> 00:01:48,290 an infile, toisc go bhfuil muid ag dul go dtí a athrú sé ar an comhbhrí. 27 00:01:48,290 --> 00:01:53,890 Mar sin, cuimhnigh anois go chúiseanna aisteach bi.biheight é, diúltach, agus 28 00:01:53,890 --> 00:01:58,670 mar sin an airde iarbhír, i dearfach, táimid ag ag iarraidh a chur ar an luach iomlán. 29 00:01:58,670 --> 00:02:02,580 >> Anois, tá an stuáil ag dul a bheith mar an gcéanna ríomh mar a bhí sé i ní féidir dí, 30 00:02:02,580 --> 00:02:06,060 baint úsáide as an leithead d'aois, agus anois táimid iarbhír ag dul a athrú 31 00:02:06,060 --> 00:02:07,320 cad in ár header. 32 00:02:07,320 --> 00:02:11,200 Mar sin, táimid ag dul chun méadú ar ár leithead ag n, ós rud é tá muid ag scálú an leithead ag 33 00:02:11,200 --> 00:02:15,100 n, méadaigh an airde le n, ós rud é go bhfuil muid scálú trí n, agus anois ní mór dúinn 34 00:02:15,100 --> 00:02:19,250 ríomh le haghaidh stuála nua bunaithe ar an leithead nua. 35 00:02:19,250 --> 00:02:21,840 >> Mar sin, anois is gá dúinn a athrú roinnt réimsí eile inár header. 36 00:02:21,840 --> 00:02:26,890 Bi.biSizeImage ceaptha a bheith ar an méid de na bearta sna pixel 37 00:02:26,890 --> 00:02:28,520 agus stuála an íomhá. 38 00:02:28,520 --> 00:02:34,190 Agus sin an méid a chéile amháin de na ár Is íomhá méid RGB triple, an méid 39 00:02:34,190 --> 00:02:39,430 de picteilín amháin, amanna ar líon na picteilíni i ndiaidh a chéile, móide an stuála ag 40 00:02:39,430 --> 00:02:40,910 an deireadh an tsraith. 41 00:02:40,910 --> 00:02:45,200 Agus ansin tá muid ag dul a iolrú go bhfuil ag Luach glan de ár n-airde a fháil 42 00:02:45,200 --> 00:02:48,350 líon iomlán na mbeart sna sonraí íomhá. 43 00:02:48,350 --> 00:02:53,050 Is bf.bfSize ach an líon iomlán ar beart i ár sonraí íomhá, mar sin 44 00:02:53,050 --> 00:02:56,530 bi.biSizeImage, móide an méid ár ceanntásca. 45 00:02:56,530 --> 00:02:59,850 Mar sin, ag cur ar an méid comhaid bitmap header, agus méid de info bitmap 46 00:02:59,850 --> 00:03:00,800 Ceanntásc, ceart go leor. 47 00:03:00,800 --> 00:03:03,170 Mar sin tá go léir is gá dúinn a athrú in ár ceanntásca. 48 00:03:03,170 --> 00:03:07,020 Anois, beidh muid ag scríobh an header comhad bitmap chun ár comhbhrí, agus ár info bitmap 49 00:03:07,020 --> 00:03:09,880 header ar ár comhbhrí, agus anois tá muid réidh le tosú ag dul 50 00:03:09,880 --> 00:03:11,990 thar na pixel iarbhír. 51 00:03:11,990 --> 00:03:15,720 >> Mar sin, ba mhaith linn a iterate thar an infile ar scanadh línte. 52 00:03:15,720 --> 00:03:17,730 Mar sin, ba mhaith linn a iterate thar oldheight. 53 00:03:17,730 --> 00:03:20,830 Sin é an fáth gá dúinn a mheabhrú an airde bunaidh, sula athraíonn muid é 54 00:03:20,830 --> 00:03:23,040 agus de réir scála dó le n. 55 00:03:23,040 --> 00:03:27,810 Anois, tá muid ag dul a léamh amháin ró an infile isteach 56 00:03:27,810 --> 00:03:30,630 Maolán méid oldwidth. 57 00:03:30,630 --> 00:03:36,190 Méid sin anseo, tá muid ag freading de RGB triple, picteilín amháin, agus leithead d'aois 58 00:03:36,190 --> 00:03:39,760 iad ó na infile isteach inár Maolán. 59 00:03:39,760 --> 00:03:43,480 Agus bhfuil dul chun bheith ina iomlán as a chéile sa eagar. 60 00:03:43,480 --> 00:03:50,390 Mar sin, anois, ba mhaith linn a amanna n iterate a an tsraith a phriontáil chun ár n comhbhrí amanna. 61 00:03:50,390 --> 00:03:52,510 Agus mar sin go bhfuil an méid atá an lúb a dhéanamh. 62 00:03:52,510 --> 00:03:57,910 Tá an lúb istigh iterating thar an rámhaigh féin, thar an eagar, priontáil 63 00:03:57,910 --> 00:04:00,710 gach picteilín san eagar n-uaire. 64 00:04:00,710 --> 00:04:04,510 Mar sin, tá an eilimint 0ú mbeith clóbhuailte n amanna, is é an chéad eilimint á 65 00:04:04,510 --> 00:04:05,660 clóite amanna n. 66 00:04:05,660 --> 00:04:10,820 Agus go bhfuil saghas conas táimid ag dul chun cothrománach scála sa comhbhrí, agus 67 00:04:10,820 --> 00:04:13,390 an lúb, ós rud é tá muid ag looping n amanna, conas a bhfuil muid ag dul go dtí 68 00:04:13,390 --> 00:04:15,580 scála hingearach. 69 00:04:15,580 --> 00:04:19,850 >> Síos anseo, feicimid gur gá dúinn a chur leis an stuáil ag deireadh gach as a chéile. 70 00:04:19,850 --> 00:04:25,050 Sin an fáth go bhfuil sé seo taobh istigh den lúb do go bhfuil a phriontáil amach na sraitheanna n díreach 71 00:04:25,050 --> 00:04:28,400 an tsraith amháin ón infile. 72 00:04:28,400 --> 00:04:32,150 Ansin síos anseo, tá mé ag dul a skip thar an stuála san infile, ós rud é aon uair amháin 73 00:04:32,150 --> 00:04:34,560 táimid ag déanamh leis as a chéile ar cheann de na infile, ní féidir linn cúram faoi 74 00:04:34,560 --> 00:04:35,290 cad a bhí an stuáil. 75 00:04:35,290 --> 00:04:37,110 Ba mhaith linn ach a fháil chun an dara sraith. 76 00:04:37,110 --> 00:04:40,870 Agus ansin beidh muid ar ais lúb agus a dhéanamh go léir seo arís le haghaidh an dara sraith. 77 00:04:40,870 --> 00:04:44,406 >> Ar deireadh, nuair a táimid ag déanamh le gach sin, is féidir linn a dhúnadh ar an infile, gar 78 00:04:44,406 --> 00:04:47,430 an comhbhrí, agus seol ar ais 0 gheall orainn ag déanamh. 79 00:04:47,430 --> 00:04:50,330 >> Is é mo ainm Rob, agus bhí sé seo Athraigh. 80 00:04:50,330 --> 00:04:54,934 >> [Seinm ceoil]