venerdì 17 novembre 2017

Download browser Opera

Download Opera browser for Windows
Il nuovo browser Opera scaricabile qui http://www.opera.com/it permette una navigazione del web sicura e veloce.
Oltre alle varie funzionalità comuni agli altri browser, offre un valido supporto per la gestione delle reti VPN.
Il tutto gratuitamente, un browser che non richiede nessuna registrazione o altro.

giovedì 16 novembre 2017

free ebook linguaggio di programmazione Scala

Scala Succinctly

Un ebook di oltre 100 pagine in lingua inglese sul linguaggio di programmazione Scala.
L'ebook scaricabile gratuitamente qui https://www.syncfusion.com/resources/techportal/details/ebooks/scala_succinctly in formato pdf o per dispositivi mobile, fornisce le basi di questo linguaggio.

mercoledì 15 novembre 2017

download gratuito di clipart

Se state cercando un sito per poter scaricare gratuitamente delle clipart, con possibilità di modificarle on line, il seguente sito http://www.i2clipart.com/  offre una vasta raccolta di immagini clipart, suddivisi in categorie, oppure ricercarli tramite parola chiave.
Il sito è in lingua inglese.

martedì 14 novembre 2017

.Net iTextSharp Unire due file PDF aggiungendo una filigrana in VB.Net e C#

Si riporta l'articolo scritto per il sito https://www.iprogrammatori.it/articoli/programmazione/art_net-unire-due-file-pdf-aggiungendo-una-f_1540.aspx

In questo articolo vedremo come gestire un file pdf tramite la libreria gratuita iTextSharp per aggiungere una filigrana tramite file PDF o immagine.
Può capitare nei file pdf che abbiamo creato, di aggiungere nella stessa pagina un altro file pdf, sovrapponendolo con un certo livello di trasparenza, oppure aggiungere un file immagine, che può essere il logo o altra immagine.

Stesura del codice

In Visual Studio 2017, create un nuovo progetto di tipo Windows Application, ricordando che tale codice si può utilizzare anche in ambiente web, in particolare con la tecnologia Asp.Net.
Dopo aver creato il progetto con il linguaggio di programmazione di proprio interesse, aggiungiamo il riferimento alla libreria iTextSharp la quale fornisce proprietà e metodi per la gestione dei file “PDF”.
Dopo aver aggiunto tale riferimento, nella parte visiva della form, aggiungiamo due pulsanti, uno servirà per creare un nuovo file PDF con una filigrana presa da un file “Pdf” e l’altro da un file di tipo immagine.
Dopo aver aggiunto i due pulsanti, facciamo doppio click sul pulsante ed in visualizzazione codice, scriviamo lo spazio dei nomi per gestire le classi della libreria per la gestione dei file pdf e per la gestione dei file in generale.
Qui di seguito si riporta la dichiarazione per entrambi i linguaggi.


Vb.Net

Imports System.IO

Imports iTextSharp

Imports iTextSharp.text.pdf

C#

using iTextSharp.text.pdf;

using System.IO;

A questo punto nell’evento click del primo pulsante, che abbiamo appena generato, scriviamo il codice, con il quale si elabora un file pdf già esistente, tramite la classe pdfreader, e tramite la classe "pdfStamper" viene gestita la filigrana.
Nel codice avremmo due oggetti di tipo pdfreader, con il quale andremo a gestire un file “Pdf” esistente contenente le informazioni su cui applicare la prima pagina di un altro file pdf esistente. In brevi parole uniremo due file pdf, da cui se ne crea un nuovo tramite la classe "PdfStamper".
La classe "pdfcontentByte" permette la gestione l’elaborazione dei file pdf da unire, mentre la classe pdfgstate la gestione della trasparenza.
Qui di seguito si riporta il codice per entrambi i linguaggi di programmazione.


VB.Net

Private Sub BtnGenera_Click(sender As Object, e As EventArgs) Handles BtnGenera.Click

        'File nel quale inserire la filigrana

        Dim pdfReader As New PdfReader("C:\test\filepdf.pdf")

        'File nuovo con la filigrana applicata

        Dim pdfStamper As New PdfStamper(pdfReader, New FileStream("C:\test\NuovoFilePdf.pdf", FileMode.Create))

        'file pdf con la filigrana da applicare

        Dim pdfReaderFiligrana As New PdfReader("C:\test\filePdfConFiligrana.pdf")

        'byte del filigrana

        Dim filigranaDaApplicare As PdfContentByte

        'Applico la filigrana per ogni pagina

        For ContaPagine As Integer = 1 To pdfReader.NumberOfPages

            filigranaDaApplicare = pdfStamper.GetOverContent(ContaPagine)

            Dim gsTrasparenza As New PdfGState() With {

                .FillOpacity = 0.5F

            }

            filigranaDaApplicare.SetGState(gsTrasparenza)

 

            filigranaDaApplicare.AddTemplate(pdfStamper.GetImportedPage(pdfReaderFiligrana, 1), 0, 0)

        Next

 

        pdfStamper.FormFlattening = True

        pdfStamper.Close()

        pdfReader.Close()

        pdfReaderFiligrana.Close()

    End Sub

C#

private void BtnGenera_Click(object sender, EventArgs e)

        {

            //File nel quale inserire la filigrana

            PdfReader pdfReader = new PdfReader("C:\\test\\filepdf.pdf");

            //File nuovo con la filigrana applicata

            PdfStamper pdfStamper = new PdfStamper(pdfReader, new FileStream("C:\\test\\NuovoFilePdf.pdf", FileMode.Create));

            //file pdf con la filigrana da applicare

            PdfReader pdfReaderFiligrana = new PdfReader("C:\\test\\filePdfConFiligrana.pdf");

            //byte del filigrana

            PdfContentByte filigranaDaApplicare;

            //Applico la filigrana per ogni pagina

            for (int ContaPagine = 1; ContaPagine <= pdfReader.NumberOfPages; ContaPagine++)

            {

                filigranaDaApplicare = pdfStamper.GetOverContent(ContaPagine);

                PdfGState gsTrasparenza = new PdfGState()

                {

                    FillOpacity = 0.5f

                };

                filigranaDaApplicare.SetGState(gsTrasparenza);

                filigranaDaApplicare.AddTemplate(pdfStamper.GetImportedPage(pdfReaderFiligrana, 1), 0, 0);

 

            }

 

            pdfStamper.FormFlattening = true;

            pdfStamper.Close();

            pdfReader.Close();

            pdfReaderFiligrana.Close();

 

 

 

        }




Il codice precedente tramite i commenti viene illustrata passo dopo passo le varie righe.
Da ricordare, che con il metodo “addTemplate” uniscono i due file Pdf, che poi verrà generato un nuovo file “Pdf”, mentre con il metodo close rilascio lo streamdati e libero la memoria.
Ritorniamo in visualizzazione della form, parte design, e facciamo click sul secondo pulsante, in modo che passiamo in visualizzazione codice nell’evento click di tale pulsante.
Il codice qui di seguito, è simile al precedente, con una piccola variazione, che anziché utilizzare un altro file pdf esistente, si utilizzerà un file immagine.




VB.Net

Private Sub BtnGeneraConLogo_Click(sender As Object, e As EventArgs) Handles BtnGeneraConLogo.Click

        'File nel quale inserire la filigrana

        Dim pdfReader As New PdfReader("C:\test\filepdf.pdf")

        'File nuovo con la filigrana applicata

        Dim pdfStamper As New PdfStamper(pdfReader, New FileStream("C:\test\NuovoFilePdf.pdf", FileMode.Create))

 

        'per la gestione  del logo

        Dim imageLogo As iTextSharp.text.Image = iTextSharp.text.Image.GetInstance("C:\test\logo.jpg")

        imageLogo.SetAbsolutePosition(100, 100)

 

 

        'byte del filigrana

        Dim filigranaDaApplicare As PdfContentByte

        'Applico il logo per ogni pagina

        For ContaPagine As Integer = 1 To pdfReader.NumberOfPages

            filigranaDaApplicare = pdfStamper.GetOverContent(ContaPagine)

            Dim gsTrasparenza As New PdfGState() With {

                .FillOpacity = 0.5F

            }

            filigranaDaApplicare.SetGState(gsTrasparenza)

 

            filigranaDaApplicare.AddImage(imageLogo)

        Next

 

        pdfStamper.FormFlattening = True

        pdfStamper.Close()

        pdfRea

 

C#

private void BtnGeneraConLogo_Click(object sender, EventArgs e)

        {

            //File nel quale inserire la filigrana

            PdfReader pdfReader = new PdfReader("C:\\test\\filepdf.pdf");

            //File nuovo con la filigrana applicata

            PdfStamper pdfStamper = new PdfStamper(pdfReader, new FileStream("C:\\test\\NuovoFilePdf.pdf", FileMode.Create));

           

            //per la gestione del logo

            iTextSharp.text.Image imageLogo = iTextSharp.text.Image.GetInstance("C:\\test\\logo.jpg");

            imageLogo.SetAbsolutePosition(100, 100);

 

 

            //byte del filigrana

            PdfContentByte filigranaDaApplicare;

            //Applico il logo per ogni pagina

            for (int ContaPagine = 1; ContaPagine <= pdfReader.NumberOfPages; ContaPagine++)

            {

                filigranaDaApplicare = pdfStamper.GetOverContent(ContaPagine);

                PdfGState gsTrasparenza = new PdfGState()

                {

                    FillOpacity = 0.5f

 

                    

                };

                filigranaDaApplicare.SetGState(gsTrasparenza);

                filigranaDaApplicare.AddImage(imageLogo);

 

            }

 

            pdfStamper.FormFlattening = true;

            pdfStamper.Close();

            pdfReader.Close();

            

        }


Come si è visto dal precedente codice, cambiando due righe di codice, in particolare aggiungendo la classe image ed utilizzando il metodo “AddImage” della classe pdfcontentyByte, il risultato è ben diverso.

Conclusioni


L’articolo ha voluto fornire delle indicazioni e tecniche di come utilizzare la libreria gratuita “ItextSharp” su aspetti non comuni della gestione dei file pdf, ma che possono rientrare in quei scenari lavorativi richiesti.
Applicando un logo o unire due file pdf, è cosa semplice nei file pdf, tramite questa libreria, cambiando solo alcune righe di codice, e scrivendo poco codice.
Una libreria completa che permette di realizzare anche complesse applicazioni, e fornisce al programmatore uno strumento di grande utilità.

domenica 12 novembre 2017

metroui.org form validator event

Il Framework metroui.org.ua ha la gestione della validazione dei campi tramite il form validator.
Nel caso che dobbiamo gestire l'evento in caso che i campi obbligatori non sono valorizzati, dobbiamo utilizzare l'evento data_on_error_input nel viewer.

Qui di seguito un esempio di tale utilizzo


Nel form MVC di Asp.Net avremo:

@using (Html.BeginForm("Create", "Doc", FormMethod.Post, new { data_role = "validator",   data_on_error_input="MioEvento", data_hint_mode = "line", enctype = "multipart/form-data" }))



Dove la proprietà data_on_error_input è impostata su un evento di Javascript.


  function MioEvento(input) {
          alert('evento');
        }


Si ricorda che tale evento viene richiamato per ogni controllo nel quale c'è la validazione

venerdì 10 novembre 2017

ASP MVC href to a controller/view

Nel caso che nel view dobbiamo rendere un pulsante di tipo iperlink ossia con il tag a href="www.sito.it possiamo utilizzare la parola chiave url.action; Qui di seguito un esempio applicato ad un pulsante.



 a href="@Url.Action( "Index", "Home")" class="MiaClasse">testo

giovedì 9 novembre 2017

download free ebook Application Security in .NET

Application Security in .NET Succinctly

Dal seguente sito https://www.syncfusion.com/resources/techportal/details/ebooks/Application_Security_in_NET_Succinctly potete scaricare un ebook gratuito in lingua inglese sulla sicurezza delle applicazioni .Net.
Il libro è in lingua inglese e formato pdf o per dispositivi mobile.

martedì 7 novembre 2017

VSTO rilevare il byte stream dei file allegati in Outlook in VB.Net e C#

Nello sviluppare applicazioni VSTO per Microsoft Outlook in particolare componenti aggiuntivi, può tornare utile rilevare lo stream byte dei file allegati.
Il frammento di codice qui di seguito, illustra il rilevamento dello stream del file allegato.

Dichiarazione di variabile o costante

VB.Net
  Dim PR_ATTACH_DATA_BIN As String = "http://schemas.microsoft.com/mapi/proptag/0x37010102"

C#
const string PR_ATTACH_DATA_BIN = "http://schemas.microsoft.com/mapi/proptag/0x37010102";


Utilizzo della variabile o costante nel metodo GetProperty

VB.Net
For Each elemento As Outlook.Attachment In mailElemento.Attachments
    allegatoFile = elemento.PropertyAccessor.GetProperty(PR_ATTACH_DATA_BIN)
 Next

C#
 foreach (Outlook.Attachment elemento in mailItem.Attachments)
                                {

    allegatoFile = elemento.PropertyAccessor.GetProperty(PR_ATTACH_DATA_BIN);
}

lunedì 6 novembre 2017

Sito italiano su Python la community italiana

homepage

Oggi segnalo una community tutta italiana riguardante il linguaggio di programmazione Python, visibile a questo indirizzo http://www.python.it/ .
Una community dove trovare materiale, articoli, forum e confrontarsi su questo linguaggio.

domenica 5 novembre 2017

FT: Un sito per i bambini


Il fuori tema di oggi, riguarda un blog dedicando all'infanzia, con tanti interessanti spunti.
Il sito http://www.vivacemente.org offre una serie di idee tutte dedicate ai bambini, con attività da svolgersi in classe o a casa con i genitori.

Complimenti all'autrice del sito.

sabato 4 novembre 2017

Download gratuito di Microsoft Office 2016, 2013, 2010, 2007 e 365

Windows 10


Dal seguente sito https://tb.rg-adguard.net/index.php potete scaricare le varie versioni di Microsoft Office.
Dopo aver selezionato il prodotto, bisogna impostare la versione, l'edizione, la lingua ed in fine l'architettura, a questo punto sarà possibile scaricare il file immagine.
Per il download e maggiori informazioni, visitate il sito indicato.

venerdì 3 novembre 2017

Evento gratuito Red Hat Open Source Day 2017

Red Hat Open Source Day logo

Tra pochi giorni, si svolgerà l'evento gratuito dedicato al mondo Open Source, l'evento dell'anno Red Hat Open Source Day 2017, nel quale saranno illustrate le novità di questo mondo.
La partecipare è gratuita, ma bisogna registrarsi al seguente sito https://www.redhat.com/it/events/red-hat-open-source-day-italia nel quale si trovano informazioni utili a tale evento, come agenda, luogo, ed altro.

giovedì 2 novembre 2017

Evento gratuito sulla sicurezza informatica

logo

Pochi giorni mancano al grande appuntamento sulla sicurezza informatica, tema di grande attualità e soprattutto importanza visto anche gli ultimi avvenimenti.
L'evento Cyber Security 360 summit, qui http://www.cybersecurity360summit.it/ la pagina dell'evento, è la conferenza gratuita ed aperta a tutti, nel quale si potranno conoscere aspetti importanti dell'attuale situazione in Italia su questo tema, che è sempre più a rischio.

L'evento è gratuito per partecipare bisogna registrarsi nel sito indicato, dove si può consultare il luogo e l'agenda.