Il blog per tutti gli smanettoni del pc

Home » Archivio di dicembre 2010
dic 27

Dopo  anni di ripensamenti, finalmente, ho installato sul mio portatile  Open Suse e devo dire che la vita in questo S.O è alquanto insidiosa: ogni piccolo problema per un principiante si trasforma in una catastrofe, soprattutto per chi è nato e cresciuto su Windows =) .

Essendo un neofita nel mondo Linux, in questi giorni di puro smanettamento,   sto imparando tantissime cose e mi piacerebbe condividerle con voi .

Tutti conoscete JDownloader , no !? Per chi scarica di tutto online è un software indispensabile perchè gestisce i download su siti di file hosting come megaupload e fileserver.
Vediamo come installarlo perchè i passi da fare non sono immediati come su windows .

Prima di tutto scarichiamo a questo indirizzo l’archivio contenente i file del software . Naturalmente, noi dobbiamo scaricare i file per Linux quindi, fate click sul Pinguino .

Scaricato il file JDownloader.zip bisogna estrarlo nell hd, io li ho messi in /home/JDwonloader ma siete liberi di scegliere qualsiasi cartella. Continua a leggere

dic 22

Con il file htaccess è possibile, se configurato, vietare l’accesso ai nostri file da siti esterni perchè puo’ capitare che qualcuno possa inserire una immagine contenuta nel nostro server facendoci sprecare della banda .

Il codice da inserire nel file htaccess è il seguente ..


RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://nostrosito.it [NC]
RewriteCond %{HTTP_REFERER} !^http://www.nostrosito.it [NC]
RewriteRule [^/]+.*$ - [F]

Con RewriteEngine attiviamo il modrewrite il quale viene usato per reindirizzare una richiesta url e con il comando RewriteCond definiamo le regole di indirizzamento. In questo caso gli diciamo che deve reindirizzare le pagine che non provengono dal nostro sito alla pagina di errore 403

Per maggiori informazioni andare sul sito apache

dic 19

Eccoci di nuovo con un altro articolo sulla programmazione vb.net dedicata alle immagini . Oggi realizzeremo un semplice software per “timbrare” delle immagini con un logo o meglio crearemo un software per  sovrapporre ad un’ immagine selezionata un’altra immagine di dimensione piu’ piccola come per esempio un logo .

Il codice in questione è il seguente, proviamo ad analizzarlo :

Public Class Form1
    Function timbra(ByRef img As Bitmap, ByRef timbro As Bitmap) As Bitmap
        Dim eg As Graphics
        timbra = New Bitmap(img.Width, img.Height)
        eg = Graphics.FromImage(timbra)
        eg.DrawImage(img, New Point(0, 0))
        eg.DrawImage(timbro, New Point((img.Width - timbro.Width) - 20, (img.Height - timbro.Height) - 20))
    End Function
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim timbro As Bitmap = New Bitmap("c:\tmp\timbro.png")
        Dim immagine As Bitmap = New Bitmap("c:\tmp\1.gif")
        Dim imgTimbrata As Bitmap = timbra(immagine, timbro)
        imgTimbrata.Save("c:\tmp\1t.jpg", Drawing.Imaging.ImageFormat.Jpeg)
    End Sub
End Class

La parte piu’ importante è la funzione Timbra la quale accetta due parametri di tipo bitmap e restituisce la nuova immagine modificata . Il primo parametro è l’immagine da timbrare mentre il secondo è il timbro da usare .

Function timbra(ByRef img As Bitmap, ByRef timbro As Bitmap) As Bitmap
        Dim eg As Graphics

Subito dopo la definizione della funzione , dichiariamo la variabile eg di tipo grapich, essa come abbiamo visto in un articolo precedente ( classe grapich ) si occupa della creazione e della modifica di immagini.

timbra = New Bitmap(img.Width, img.Height)

Timbra , la variabile di tipo bitmap , verrà restituita quando il codice della funzione sarà eseguito. Con questo pezzo di codice invochiamo il costruttore bitmap e dichiariamo le dimensioni della nuova immagine.

 eg = Graphics.FromImage(timbra)

Con Graphics.FromImage(timbra) passiamo il controllo dell’immagine timbra all’istanza della classe graphic eg .

eg.DrawImage(img, New Point(0, 0))
eg.DrawImage(timbro, New Point((img.Width - timbro.Width) - 20, (img.Height - timbro.Height) - 20))

Questa è la parte piu’ importante del codice e per capirla bene dovete sapere che DrawImage serve per copiare tutti i px di un immagine su un’altra immagine . La funzione , accetta due parametri, il primo parametro è l’immagine da copiare mentre il secondo sono le cordinate, x e y, dove incollare l’immagine .

Con queste due righe di codice non facciamo altro che duplicare l’immagine da timbrare e inserire l’immagine timbro in basso a destra .

dic 14

Facebook il piu grande social network a livello mondiale  ha da poco lanciato una sfida rivolgendosi a tutti gli smanettoni della comunità . Le gare inizieranno il 7 gennaio 2010 e consistono nel risolvere dei problemi con degli algoritmi scritti in un linguaggio di programmazione.

Per chi passerà la prima fase il giorno da ricordare è il 16 gennaio 2011. I migliori 3000 che supereranno la prima fase e che otterranno un buon punteggio potranno passare al secondo round , un pò più difficile in quando dovranno scrivere l’algoritmo nell’arco di 3 ore. I 300 vincitori andranno in California, giorno 11 marzo 2011 per svolgere l’ultimo round della gara.

In palio un primo premio da 5 mila dollari, un secondo da 2 mila, un terzo da mille e per gli altri, fino al 25esimo, 100 dollari.

Per finire vi segnalo a questo indirizzo una serie di prove da risolvere per partecipare al meglio alla gara.

Le iscrizioni partiranno giorno 20 dicembre 2010 sulla pagina facebook del progetto

dic 13

La classe graphics, del framework .net, ci permette di manipolare le immagini o addirittura creare un immagine da zero e successivamente inserire forme geometriche come il cerchio , la linea e il quadrato . Iniziamo in questo appuntamento con un semplice esempio , successivamente vi spiegherò come creare un software per timbrare le immagini con un logo .

I metodi della classe in questione sono tanti, proviamo ad analizzarne alcuni .

DrawLine(Pens.Olive, New Point(1, 1), New Point(100, 1))

La sintassi del metodo DrawLine è DrawLine(colore,punto di inizio,punto di fine) e serve a realizzare una linea

Se invece vogliamo disegnare un rettangolo occorre usare la funzione DrawRectangle(colore linea,x,y,larghezza,altezza)

Una visione a 360 gradi della classe grapch la trovate all’indirizzo http://msdn.microsoft.com/it-it/library/5y289054.aspx

Prima di concludere vi posto un semplice esempio di un progetto form con una picturebox

        Dim img As New Bitmap(500, 500)
        Dim eg As Graphics = Graphics.FromImage(img)
        eg.DrawLine(Pens.Olive, New Point(1, 1), New Point(100, 1))
        eg.DrawRectangle(Pens.Orange, New Rectangle(New Point(0, 0), New Size(100, 200)))
        PictureBox1.Image = img

Come potete notare dal codice, prima di inizializzare la classe graphics, occorre creare un oggetto bitmap specificando le dimensioni della nuova immagine .

dic 11

Ninite è un ottimo servizio online che ci permette di installare in un solo colpo piu’ software . Il procedimento è abbastanza semplice: basta andare sul sito www.ninite.com, selezionare i software che vi interessano e fare click su Get Installer in basso a destra . I downloads e le installazioni dei programmi scelti avvengono in modo del tutto automatico . L’unico punto debole a mio avviso è la lista dei software : un po’ povera

www.ninite.com

Ninite è un ottimo servizio online che ci permette di installare in un solo colpo piu’ software . Il procedimento è abbastanza semplice: basta andare sul sito www.ninite.com, selezionare i software che vi interessano e fare click su Get Installer in basso a destra . I download e l’installazione dei programmi scelti avvengono in modo del tutto automatico . L’unico punto debole , a mio avviso, è la lista dei software : un po’ scarna www.ninite.com