﻿1
00:00:01,310 --> 00:00:04,140
‫-: In questo video imparerai l'elaborazione e la

2
00:00:04,140 --> 00:00:06,930
‫manipolazione delle immagini con Node JS, e

3
00:00:06,930 --> 00:00:08,760
‫in questo caso particolare,

4
00:00:08,760 --> 00:00:11,193
‫ridimensioneremo e convertiremo le nostre immagini.

5
00:00:12,760 --> 00:00:15,140
‫Quindi ovunque nella nostra interfaccia

6
00:00:15,140 --> 00:00:18,490
‫utente assumiamo che le immagini caricate siano quadrati.

7
00:00:18,490 --> 00:00:20,250
‫In modo che possiamo

8
00:00:20,250 --> 00:00:22,570
‫quindi visualizzarli come cerchi come questo.

9
00:00:22,570 --> 00:00:25,400
‫E quindi funziona solo quando sono

10
00:00:25,400 --> 00:00:27,260
‫quadrati, ma ovviamente

11
00:00:27,260 --> 00:00:30,535
‫nel mondo reale gli utenti raramente caricheranno

12
00:00:30,535 --> 00:00:32,520
‫immagini che sono quadrati.

13
00:00:32,520 --> 00:00:34,600
‫E quindi il nostro lavoro

14
00:00:34,600 --> 00:00:37,850
‫ora è ridimensionare effettivamente le immagini per renderle quadrate.

15
00:00:37,850 --> 00:00:41,300
‫Va bene, quindi ecco come lo faremo.

16
00:00:41,300 --> 00:00:45,370
‫Aggiungeremo ancora un altro middleware prima dell'aggiornamento e poi

17
00:00:45,370 --> 00:00:47,570
‫quel middleware si

18
00:00:47,570 --> 00:00:49,920
‫occuperà dell'effettiva elaborazione delle immagini.

19
00:00:49,920 --> 00:00:53,200
‫Va bene, quindi in realtà facciamolo qui nel

20
00:00:53,200 --> 00:00:54,470
‫codice subito dopo

21
00:00:54,470 --> 00:00:57,333
‫questo, perché sono un po' connessi, no?

22
00:00:58,610 --> 00:01:00,623
‫Quindi, esporta

23
00:01:01,690 --> 00:01:05,513
‫punti, ridimensiona la foto dell'utente.

24
00:01:13,250 --> 00:01:15,320
‫E prima di continuare, aggiungiamo

25
00:01:15,320 --> 00:01:18,160
‫effettivamente questo middleware allo stack del middleware in

26
00:01:18,160 --> 00:01:19,523
‫questo particolare percorso.

27
00:01:20,870 --> 00:01:22,673
‫Quindi questo è nei percorsi

28
00:01:23,860 --> 00:01:26,710
‫degli utenti, e quindi qui, subito dopo che

29
00:01:26,710 --> 00:01:27,923
‫la foto

30
00:01:29,410 --> 00:01:32,470
‫è stata caricata in questo middleware, la ridimensioneremo.

31
00:01:32,470 --> 00:01:35,180
‫Quindi ridimensiona, e qui è in realtà

32
00:01:35,180 --> 00:01:36,603
‫il controller dell'utente.

33
00:01:41,130 --> 00:01:42,710
‫Bene.

34
00:01:42,710 --> 00:01:44,060
‫In realtà scendiamo

35
00:01:45,620 --> 00:01:47,320
‫qui e torniamo indietro.

36
00:01:47,320 --> 00:01:49,480
‫E quindi a questo punto abbiamo già

37
00:01:49,480 --> 00:01:51,540
‫il file sulla nostra richiesta.

38
00:01:51,540 --> 00:01:53,500
‫Almeno se c'è stato un caricamento e

39
00:01:53,500 --> 00:01:55,000
‫se non c'è stato

40
00:01:55,000 --> 00:01:57,280
‫alcun caricamento, allora ovviamente non vogliamo fare nulla.

41
00:01:57,280 --> 00:02:00,163
‫Quindi questo significa che vogliamo passare al prossimo middleware.

42
00:02:01,090 --> 00:02:03,680
‫Quindi, se non ci

43
00:02:05,230 --> 00:02:10,230
‫sono file sulla richiesta, torna subito e vai al prossimo.

44
00:02:10,960 --> 00:02:13,380
‫Ok, ma per il resto, ovviamente,

45
00:02:13,380 --> 00:02:15,700
‫allora vogliamo ridimensionare l'immagine.

46
00:02:15,700 --> 00:02:19,690
‫E per questo, useremo il pacchetto sharp.

47
00:02:19,690 --> 00:02:20,890
‫Bene.

48
00:02:20,890 --> 00:02:24,453
‫Quindi, prima di tutto installiamolo.

49
00:02:25,630 --> 00:02:28,710
‫Quindi MPM installa sharp Va bene, e

50
00:02:32,190 --> 00:02:35,720
‫dal momento che sta facendo il suo lavoro andiamo

51
00:02:35,720 --> 00:02:38,533
‫avanti e lo mettiamo già qui.

52
00:02:39,500 --> 00:02:40,463
‫Così

53
00:02:41,940 --> 00:02:45,600
‫tagliente, e richiede, tagliente.

54
00:02:45,600 --> 00:02:47,360
‫E sharp è una libreria di

55
00:02:47,360 --> 00:02:51,230
‫elaborazione delle immagini davvero bella e facile da usare per Node Js. E ci

56
00:02:51,230 --> 00:02:52,590
‫sono molte cose che possiamo

57
00:02:52,590 --> 00:02:53,930
‫fare con essa.

58
00:02:53,930 --> 00:02:55,970
‫Ma dove brilla davvero è

59
00:02:55,970 --> 00:02:59,150
‫il ridimensionamento delle immagini in un modo molto semplice.

60
00:02:59,150 --> 00:03:03,690
‫E quindi, è esattamente quello che stiamo cercando qui.

61
00:03:03,690 --> 00:03:04,550
‫Bene.

62
00:03:04,550 --> 00:03:08,590
‫Quindi, diciamo nitido e quindi qui dobbiamo

63
00:03:08,590 --> 00:03:11,180
‫sostanzialmente passare nel file.

64
00:03:11,180 --> 00:03:13,990
‫Ora, quando si esegue un'elaborazione delle immagini

65
00:03:13,990 --> 00:03:16,120
‫in questo modo subito dopo

66
00:03:16,120 --> 00:03:19,310
‫aver caricato un file, è sempre meglio non salvare

67
00:03:19,310 --> 00:03:22,770
‫nemmeno il file sul disco, ma salvarlo in memoria.

68
00:03:22,770 --> 00:03:24,580
‫Ne abbiamo già parlato

69
00:03:24,580 --> 00:03:27,130
‫prima, quindi ora lo facciamo in pratica.

70
00:03:27,130 --> 00:03:29,930
‫Ok, quindi per questo abbiamo bisogno di

71
00:03:29,930 --> 00:03:32,830
‫cambiare un po' o la configurazione multer e

72
00:03:32,830 --> 00:03:35,230
‫in realtà solo questa memoria

73
00:03:35,230 --> 00:03:38,703
‫multer, perché ora non abbiamo più bisogno di tutto questo.

74
00:03:40,600 --> 00:03:42,453
‫E invece di più

75
00:03:45,700 --> 00:03:50,700
‫spazio di archiviazione, sarà semplicemente l'archiviazione di memoria a più punti.

76
00:03:52,250 --> 00:03:54,810
‫E proprio così, ok?

77
00:03:54,810 --> 00:03:56,720
‫E quindi, come ho

78
00:03:56,720 --> 00:04:00,730
‫detto prima, in questo modo l'immagine verrà archiviata come buffer.

79
00:04:00,730 --> 00:04:03,080
‫E così quel buffer è quindi

80
00:04:03,080 --> 00:04:07,820
‫disponibile su richiesta dot file dot buffer e quindi questo è molto più

81
00:04:07,820 --> 00:04:10,500
‫efficiente in questo modo, quindi invece di

82
00:04:10,500 --> 00:04:13,600
‫dover scrivere il file sul disco e poi

83
00:04:13,600 --> 00:04:15,330
‫qui leggerlo di nuovo.

84
00:04:15,330 --> 00:04:17,860
‫Teniamo semplicemente l'immagine sostanzialmente in

85
00:04:17,860 --> 00:04:20,960
‫memoria e poi qui possiamo leggerla, va bene?

86
00:04:20,960 --> 00:04:23,181
‫Ad ogni modo, chiamando la funzione

87
00:04:23,181 --> 00:04:26,300
‫sharp in questo modo qui creerai un oggetto su

88
00:04:26,300 --> 00:04:29,750
‫cui possiamo concatenare più metodi per eseguire la nostra elaborazione dell'immagine.

89
00:04:29,750 --> 00:04:32,913
‫E quindi il primo che faremo è ridimensionare.

90
00:04:34,040 --> 00:04:36,740
‫Quindi, ridimensiona, e poi qui possiamo specificare

91
00:04:36,740 --> 00:04:38,480
‫la larghezza e l'altezza.

92
00:04:38,480 --> 00:04:42,480
‫Quindi diciamo 500 e 500, quindi ricorda che

93
00:04:42,480 --> 00:04:44,780
‫vogliamo immagini quadrate e quindi,

94
00:04:44,780 --> 00:04:47,220
‫ovviamente, l'altezza deve essere uguale

95
00:04:47,220 --> 00:04:48,770
‫alla larghezza.

96
00:04:48,770 --> 00:04:50,750
‫Ora questo ritaglierà l'immagine

97
00:04:50,750 --> 00:04:55,050
‫in modo che copra l'intero 500 per 500 quadrati.

98
00:04:55,050 --> 00:04:56,400
‫E in realtà

99
00:04:56,400 --> 00:04:59,130
‫possiamo modificare questo comportamento predefinito se lo desideriamo.

100
00:04:59,130 --> 00:05:01,320
‫E quindi, di nuovo, diamo una rapida

101
00:05:01,320 --> 00:05:02,563
‫occhiata alla documentazione.

102
00:05:04,860 --> 00:05:09,053
‫Quindi diciamo, github sharp, ma in realtà il loro sito

103
00:05:09,990 --> 00:05:12,100
‫web è un po'

104
00:05:12,100 --> 00:05:14,440
‫migliore, un po' più completo.

105
00:05:14,440 --> 00:05:18,360
‫Quindi facciamo clic su quel collegamento qui, e quindi qui possiamo

106
00:05:18,360 --> 00:05:20,770
‫arrivare al ridimensionamento, che è ciò che

107
00:05:20,770 --> 00:05:22,780
‫stiamo facendo attualmente e

108
00:05:22,780 --> 00:05:25,153
‫quindi ecco di cosa stavo parlando.

109
00:05:26,110 --> 00:05:29,130
‫Va bene, quindi l'impostazione predefinita qui è

110
00:05:29,130 --> 00:05:31,070
‫che l'immagine verrà ritagliata

111
00:05:31,070 --> 00:05:33,610
‫per coprire entrambe le dimensioni fornite.

112
00:05:33,610 --> 00:05:38,610
‫Ma possiamo anche scegliere contenere, riempire, dentro o fuori.

113
00:05:39,280 --> 00:05:43,310
‫E lo faremmo impostando le opzioni qui.

114
00:05:43,310 --> 00:05:46,700
‫Quindi possiamo impostare larghezza, altezza e quindi come terza

115
00:05:46,700 --> 00:05:48,830
‫opzione, potremmo impostare questo

116
00:05:48,830 --> 00:05:52,070
‫oggetto opzioni in cui possiamo quindi definire l'adattamento.

117
00:05:52,070 --> 00:05:54,560
‫Potremmo anche definire la posizione, che è

118
00:05:54,560 --> 00:05:56,433
‫centrale per impostazione predefinita.

119
00:05:58,970 --> 00:06:00,653
‫Vedete che ci sono tutti i tipi

120
00:06:00,653 --> 00:06:03,420
‫di cose che potremmo davvero definire per mettere a punto la

121
00:06:03,420 --> 00:06:04,670
‫nostra elaborazione delle immagini.

122
00:06:04,670 --> 00:06:07,653
‫Ma in questo caso basta quello che abbiamo.

123
00:06:08,550 --> 00:06:10,720
‫Quindi passiamo al passaggio successivo.

124
00:06:10,720 --> 00:06:12,990
‫Perché quello che voglio fare

125
00:06:12,990 --> 00:06:16,450
‫dopo è effettivamente convertire le immagini sempre in jpeg, ok?

126
00:06:16,450 --> 00:06:18,863
‫E per questo, usiamo per formattare

127
00:06:21,640 --> 00:06:23,463
‫e poi jpeg.

128
00:06:25,000 --> 00:06:28,180
‫Possiamo anche quindi definire la qualità di questo jpeg.

129
00:06:28,180 --> 00:06:30,170
‫Quindi fondamentalmente per comprimerlo

130
00:06:30,170 --> 00:06:32,310
‫un po' in modo che

131
00:06:33,230 --> 00:06:36,900
‫non occupi così tanto spazio e quindi per quello,

132
00:06:36,900 --> 00:06:41,900
‫usiamo il metodo jpeg e impostiamo un'opzione in questo oggetto con qualità e

133
00:06:42,290 --> 00:06:45,043
‫diciamo il 90 percento qui, va bene?

134
00:06:46,910 --> 00:06:49,860
‫Quindi ogni metodo nella sua riga qui

135
00:06:49,860 --> 00:06:53,210
‫è molto più carino, ma in realtà non abbiamo finito.

136
00:06:53,210 --> 00:06:56,020
‫Abbiamo quasi finito, ma non del tutto.

137
00:06:56,020 --> 00:06:57,460
‫Perché ora, alla

138
00:06:57,460 --> 00:07:01,850
‫fine, vogliamo finalmente scriverlo su un file sul nostro disco.

139
00:07:01,850 --> 00:07:04,913
‫E quindi per questo, possiamo usare to file,

140
00:07:06,230 --> 00:07:08,550
‫ora questo metodo qui ha

141
00:07:08,550 --> 00:07:10,940
‫effettivamente bisogno dell'intero percorso del file.

142
00:07:10,940 --> 00:07:13,180
‫Quindi fondamentalmente immagini

143
00:07:14,240 --> 00:07:17,440
‫pubbliche, barra, utenti e infine ecco

144
00:07:17,440 --> 00:07:20,460
‫il nome del file, ok?

145
00:07:20,460 --> 00:07:21,990
‫Quindi prendiamolo in realtà

146
00:07:21,990 --> 00:07:23,550
‫da quello che avevamo qui prima.

147
00:07:23,550 --> 00:07:25,840
‫Perché, naturalmente, vogliamo che le nostre immagini

148
00:07:25,840 --> 00:07:27,183
‫abbiano un formato simile.

149
00:07:29,520 --> 00:07:32,380
‫Va bene, quindi copiamolo.

150
00:07:32,380 --> 00:07:34,723
‫Ma in realtà non lo metterò proprio qui.

151
00:07:35,790 --> 00:07:38,010
‫Invece, lo salverò effettivamente

152
00:07:38,010 --> 00:07:42,443
‫per richiedere il nome del file punto file punto.

153
00:07:43,490 --> 00:07:45,777
‫Ora perché lo sto facendo in questo modo?

154
00:07:45,777 --> 00:07:48,280
‫Ebbene è perché in questo momento questo nome

155
00:07:48,280 --> 00:07:50,340
‫di file non è definito.

156
00:07:50,340 --> 00:07:55,340
‫Quindi, quando decidiamo di salvare l'immagine in memoria come buffer, il nome

157
00:07:56,270 --> 00:08:00,050
‫del file non verrà realmente impostato, ma abbiamo davvero

158
00:08:00,050 --> 00:08:02,300
‫bisogno di quel nome

159
00:08:02,300 --> 00:08:05,050
‫di file nell'altra nostra funzione middleware, giusto?

160
00:08:05,050 --> 00:08:09,310
‫Quindi questo è qui in aggiornami proprio qui.

161
00:08:09,310 --> 00:08:12,360
‫Quindi ci affidiamo alla richiesta del file dot file

162
00:08:12,360 --> 00:08:16,400
‫dot file name per salvare il nome del file nel nostro database, giusto?

163
00:08:16,400 --> 00:08:19,770
‫E quindi, in realtà, dovremmo definirlo.

164
00:08:19,770 --> 00:08:22,442
‫E così, in precedenza era ovviamente

165
00:08:22,442 --> 00:08:25,970
‫definito dal caricamento multer che avevamo, ma dal

166
00:08:25,970 --> 00:08:30,323
‫momento che ora non c'è più, dovremmo quindi ridefinirlo sostanzialmente qui.

167
00:08:31,320 --> 00:08:32,260
‫Va bene?

168
00:08:32,260 --> 00:08:34,560
‫Poi qui, effettivamente, possiamo liberarci

169
00:08:34,560 --> 00:08:37,020
‫di questa parte dell'estensione, perché sappiamo

170
00:08:37,020 --> 00:08:39,460
‫già che sarà sempre un jpeg.

171
00:08:39,460 --> 00:08:42,570
‫Per questo motivo per formattare, ok?

172
00:08:42,570 --> 00:08:45,513
‫E quindi qui, possiamo semplicemente mettere jpeg.

173
00:08:47,130 --> 00:08:50,383
‫Quindi non è necessario ottenere l'estensione del file.

174
00:08:51,320 --> 00:08:52,263
‫E quindi

175
00:08:54,610 --> 00:08:55,993
‫ora qui, possiamo usarlo.

176
00:08:56,911 --> 00:09:00,890
‫Req dot file dot file name, ed è

177
00:09:00,890 --> 00:09:02,403
‫proprio così.

178
00:09:04,020 --> 00:09:04,853
‫Va bene?

179
00:09:04,853 --> 00:09:06,820
‫Quindi tutto ciò che dobbiamo

180
00:09:06,820 --> 00:09:10,790
‫fare ora per finire è chiamare il prossimo middleware nello stack.

181
00:09:10,790 --> 00:09:14,430
‫E quindi quella sarà la funzione del gestore dell'aggiornamento.

182
00:09:14,430 --> 00:09:17,603
‫Quindi, ovviamente, ora proviamolo.

183
00:09:18,530 --> 00:09:21,280
‫Quindi, non abbiamo più bisogno di questo.

184
00:09:21,280 --> 00:09:23,390
‫Veniamo a Postman, e

185
00:09:23,390 --> 00:09:25,240
‫ora l'utente che

186
00:09:25,240 --> 00:09:28,410
‫voglio aggiornare si chiama arrav, credo.

187
00:09:28,410 --> 00:09:31,053
‫Diamo un'occhiata qui ai nostri dati molto velocemente.

188
00:09:32,520 --> 00:09:35,910
‫E quindi sì, quindi questa è l'immagine non quadrata

189
00:09:35,910 --> 00:09:38,070
‫che stiamo per caricare ora e

190
00:09:38,070 --> 00:09:39,800
‫in realtà qui vedi la

191
00:09:39,800 --> 00:09:42,600
‫dimensione che è 1000 volte 1500, quindi confrontiamola

192
00:09:42,600 --> 00:09:44,540
‫in seguito con la nostra

193
00:09:44,540 --> 00:09:46,223
‫immagine caricata ridimensionata.

194
00:09:47,110 --> 00:09:48,090
‫Bene.

195
00:09:48,090 --> 00:09:51,090
‫Comunque, ora prendiamo il nome

196
00:09:52,120 --> 00:09:55,720
‫di arrav In realtà non ci serve, sono

197
00:09:56,840 --> 00:10:01,010
‫sempre gli stessi, quindi arrav come questo, quindi accediamo.

198
00:10:01,010 --> 00:10:02,930
‫In modo che possiamo quindi

199
00:10:02,930 --> 00:10:07,530
‫aggiornarlo e vedere che in questo momento è l'immagine qui è l'utente 11.

200
00:10:07,530 --> 00:10:09,620
‫E giusto per vederlo

201
00:10:09,620 --> 00:10:11,400
‫un po' meglio,

202
00:10:11,400 --> 00:10:15,370
‫aggiorniamoci, accediamo effettivamente alla nostra applicazione web usando

203
00:10:15,370 --> 00:10:16,543
‫quell'utente.

204
00:10:21,820 --> 00:10:23,883
‫Quindi prova uno, due, tre, quattro.

205
00:10:26,420 --> 00:10:29,490
‫Bene, questa è l'immagine corrente e

206
00:10:29,490 --> 00:10:32,233
‫ora andiamo avanti e aggiorniamola.

207
00:10:37,120 --> 00:10:40,260
‫Seleziona i file, ed ecco la

208
00:10:41,330 --> 00:10:44,900
‫nostra immagine, aprilo e vediamo cosa succede.

209
00:10:44,900 --> 00:10:46,290
‫E abbiamo finito.

210
00:10:46,290 --> 00:10:47,980
‫In realtà è stato

211
00:10:47,980 --> 00:10:50,430
‫molto veloce, quindi vediamo se è corretto.

212
00:10:50,430 --> 00:10:53,023
‫Beh, almeno il nome qui sembra corretto.

213
00:10:54,590 --> 00:10:59,590
‫Se diamo un'occhiata ai nostri utenti ora qui, è

214
00:10:59,750 --> 00:11:02,900
‫in pubblico o proprio qui.

215
00:11:02,900 --> 00:11:04,520
‫Quindi dovrebbe essere quello in realtà

216
00:11:04,520 --> 00:11:05,420
‫non lo è.

217
00:11:07,610 --> 00:11:10,070
‫E in realtà non si trova da nessuna parte.

218
00:11:10,070 --> 00:11:11,710
‫Ricarichiamo, ah, ed

219
00:11:11,710 --> 00:11:12,913
‫eccolo qui.

220
00:11:14,380 --> 00:11:15,493
‫Ora, questo è quello.

221
00:11:16,580 --> 00:11:20,060
‫Quindi vedi che ora è 500 per

222
00:11:20,060 --> 00:11:21,700
‫500, qui è

223
00:11:21,700 --> 00:11:26,560
‫molto più piccolo, quindi 55 rispetto ai 315 che avevamo prima.

224
00:11:26,560 --> 00:11:28,180
‫Quindi è

225
00:11:28,180 --> 00:11:31,740
‫molto meglio e, come vedrai qui, ora

226
00:11:31,740 --> 00:11:34,310
‫dovrebbe essere aggiornato anche qui.

227
00:11:34,310 --> 00:11:36,050
‫Ed è perfetto.

228
00:11:36,050 --> 00:11:39,650
‫Quindi la faccia è proprio nel mezzo qui.

229
00:11:39,650 --> 00:11:43,730
‫Quindi il ridimensionamento è stato davvero perfetto.

230
00:11:43,730 --> 00:11:44,563
‫Freddo.

231
00:11:44,563 --> 00:11:46,530
‫E spero che troverai

232
00:11:46,530 --> 00:11:48,810
‫un uso per questo tipo di

233
00:11:48,810 --> 00:11:51,290
‫elaborazione delle immagini anche nelle tue applicazioni.

234
00:11:51,290 --> 00:11:54,660
‫Quindi, solo per ricapitolare rapidamente cosa abbiamo fatto qui.

235
00:11:54,660 --> 00:11:57,340
‫Bene, abbiamo creato una nuova funzione middleware che

236
00:11:57,340 --> 00:11:59,490
‫verrà eseguita subito dopo che la

237
00:11:59,490 --> 00:12:01,460
‫foto è stata effettivamente caricata.

238
00:12:01,460 --> 00:12:03,850
‫E quel caricamento ora sta effettivamente

239
00:12:03,850 --> 00:12:07,860
‫accadendo su un buffer e non più direttamente sul file system.

240
00:12:07,860 --> 00:12:08,693
‫Destra?

241
00:12:08,693 --> 00:12:11,163
‫Ed ecco perché usiamo questa memoria

242
00:12:12,010 --> 00:12:14,950
‫qui, ma ovviamente questo filtro multer qui

243
00:12:14,950 --> 00:12:16,420
‫funziona ancora.

244
00:12:16,420 --> 00:12:20,063
‫E quindi possiamo ancora caricare solo immagini, va bene?

245
00:12:20,980 --> 00:12:23,510
‫Quindi qui in quel middleware mettiamo il nome

246
00:12:23,510 --> 00:12:25,600
‫del file di quell'immagine su

247
00:12:25,600 --> 00:12:28,000
‫richiesta dot file dot file name in

248
00:12:28,000 --> 00:12:30,200
‫modo che possiamo quindi usarlo nell'aggiornamento.

249
00:12:31,100 --> 00:12:33,510
‫Bene, e poi qui abbiamo

250
00:12:33,510 --> 00:12:35,670
‫l'effettiva elaborazione dell'immagine stessa.

251
00:12:35,670 --> 00:12:38,330
‫Dove l'abbiamo prima ridimensionato in un

252
00:12:38,330 --> 00:12:40,120
‫quadrato e poi formattato

253
00:12:40,120 --> 00:12:43,010
‫in un jpeg con una qualità del

254
00:12:43,010 --> 00:12:45,930
‫90 percento, e infine abbiamo scritto quel file

255
00:12:45,930 --> 00:12:50,710
‫nel nostro file system nella stessa cartella che abbiamo specificato anche prima.

256
00:12:50,710 --> 00:12:53,260
‫Va bene, è così che funziona quando

257
00:12:53,260 --> 00:12:55,040
‫hai bisogno di un'elaborazione

258
00:12:55,040 --> 00:12:57,310
‫delle immagini, ma se non ne hai

259
00:12:57,310 --> 00:13:00,500
‫bisogno, puoi continuare a usarlo in questo modo, ok?

260
00:13:00,500 --> 00:13:02,210
‫E quindi è davvero importante che

261
00:13:02,210 --> 00:13:03,450
‫abbiamo imparato a

262
00:13:03,450 --> 00:13:05,160
‫farlo in entrambi i modi qui.

263
00:13:05,160 --> 00:13:07,380
‫Bene, nel prossimo video faremo

264
00:13:07,380 --> 00:13:10,462
‫funzionare effettivamente questo modulo qui in modo da

265
00:13:10,462 --> 00:13:12,700
‫poter caricare le foto degli

266
00:13:12,700 --> 00:13:14,633
‫utenti direttamente da qui.

