domenica 1 marzo 2026

Sito di Windows 11

 

sito Windows

Un sito molto interessante e soprattutto costantemente aggiornato. Parliamo del seguente sito https://woshub.com/windows11/ nel quale si trovano articoli e notizie sul sistema operativo Windows.

Il sito in lingua inglese, fornisce in maniera chiara ed esaustiva, anche con varie immagini, le soluzioni a problemi o funzionalità di Windows.


Creazione di un componente web per Microsoft Word, in .Net e Javascript

Introduzione

In questo articolo, vedremo come creare un componente di tipo Web, per il programma di video scrittura più utilizzato al mondo, Microsoft Word.

Il componente visualizzerà una frase nel documento tramite il click di un pulsante posto nel TaskPane, utilizzando file di tipo web, come HTML e Javascript.

Il componente sarà come mostrato in figura 1.


creazione componente per Word
Figura 1 – Il componente realizzato



Creazione del progetto

Si crea un nuovo progetto tramite Visual Studio 2022 Community, nella selezione dei progetti, selezioniamo il modello di tipo “Componente aggiuntivo web per Word”, il tutto come mostrato in figura 2.



creazione componente per Microsoft Word


Figura 2 – La scelta del progetto

Facciamo click sul pulsane “Avanti” , e selezioniamo l’ultima versione del Framework, la 4

8.1 , ed assegniamo il nome del progetto.

Impostati questi due campi, facciamo click sul pulsante “Crea” in modo che verrà creato il progetto. 


Stesura del codice

Terminata la creazione del progetto, non resta che scrivere il codice. Nel progetto avremo diverse cartelle, che contengono, gli script, le immagini ed altro, come se fosse appunto un’applicazione web.

Modifichiamo il file denominato “Home.css” , togliendo il codice presente di default e mettendo questo qui di seguito.

Home.css

body {

    font-family: Arial, sans-serif;

}

 

h1 {

    color: #0078D7;

}

 

button {

    background-color: #0078D7;

    color: white;

    border: none;

    padding: 10px 20px;

    cursor: pointer;

}

 

    button:hover {

        background-color: #005A9E;

    }


Questo file, permette di impostare la formattazione della pagina Home, o meglio applicare lo stile ai vari componenti presenti nella pagina.

Facciamo click sul pulsante “Home.html”, in modo da visualizzare il codice presente in questo file. Qui, troviamo il codice html, che riguarderà il taskpane, ossia quello che verrà visualizzato nel task panel. In particolare un pulsante ed un titolo.

Di seguito si riporta il codice del file “Home.html”.

<!DOCTYPE html>

<html>

<head>

    <meta charset="utf-8" />

    <title>Task Panel Personalizzato</title>

    <script src="Scripts/jquery-3.6.0.js" type="text/javascript"></script>

    <script src="https://appsforoffice.microsoft.com/lib/1/hosted/office.js"></script>

    <script src="Home.js" type="text/javascript"></script>

    <link rel="stylesheet" type="text/css" href="Home.css">

</head>

<body>

    <h1>Esempio di Task Panel Personalizzato</h1>

    <button id="run">Esegui Azione</button>

</body>

</html>




Questo codice, oltre a fare riferimento a due file di tipo Javascript, in particolare quello per la gestione delle funzionalità Microsoft Office, denominato “office.js, mentre l’altro file, quello denominato Home.js, riguarderà le funzionalità personalizzate, ossia il codice che far eseguire determinate operazioni che vorremmo effettuare sul documento Microsoft Word.

Facciamo click sul pulsante Home.Js, e togliamo il codice che è stato generato automaticamente, per inserire un codice personalizzato.

In particolare, all’evento click del pulsante, verrà inserito del testo nel documento Microsoft Word.

Di seguito si riporta il codice del file “Home.js”, delle suddette operazioni.


Home.js

Office.onReady(() => {

    if (Office.context.host === Office.HostType.Word) {

        document.getElementById("run").onclick = run;

    }

});

 

 

 

async function run() {

    await Word.run(async (context) => {

        const doc = context.document;

        doc.body.insertText("Ciao a tutti! Testo inserito nel documento ", Word.InsertLocation.end);

        await context.sync();

    });

}




Conclusioni

Terminata la stesura del codice, non resta che eseguire la nostra applicazione (premere il taso F5, oppure Esegui) per verificare quanto scritto. L’articolo ha voluto fornire al lettore, le basi per realizzare i componenti Microsoft Word, utilizzando il linguaggio del web. Per coloro che già usano questi linguaggi, troveranno molto semplice e di facile realizzazione, la creazione di componenti di Microsoft Word, anche di una certa complessità.

La creazione dei componenti, può avveri in due modalità, utilizzando il linguaggio di programmazione C#, oppure il linguaggio web, come in questo articolo.

Le potenzialità offerte dall’ambiente di sviluppo Visual Studio 2022 Community, permettono al programmatore di realizzare componenti per Microsoft Word per estendere funzionalità o aggiungere particolare operatività.

sabato 28 febbraio 2026

Rintracciare il proprio dispositivo (smartphone ) con Android

 

Google rintraccia dispositivo

Nel caso che avete la necessità di rintracciare il dispositivo portatile, quale Smartphone, tramite la funzione "find" di Google, lo potete rintracciare.

Dopo aver effettuato login nell'account Google, visitate il seguente sito Find Hub: Locate, Lock, or Erase Your Device  https://www.google.com/android/find/ il quale elencherà i dispositivi che hanno configurato il vostro account Google (gmail per intenderci) .

Se il dispositivo è acceso, potrà essere rintracciato e quindi  verrà visualizzato nella mappa, e si potranno compiere delle azioni, come per esempio riprodurre un suono, contrassegnare come smarrito o ripristinare i dati allo stato iniziale, di fabbrica, il tutto come mostrato nella figura qui di seguito.


Google rintraccia dispositivo



download gioco Incorporeal

 

gioco Incorporeal

Il gioco di avventura Incorporeal è molto ben fatto graficamente e giocabilità, adatto a ragazzi ed adulti.

Il gioco è in lingua inglese ed è gratuito per sistemi operativi Windows.

Per maggiori informazioni e download, visitate il seguente sito https://store.epicgames.com/it/p/incorporeal-b965e7


TypeScript una semplice e modalità leggibile della condizione if

Nel linguaggio di programmazione TypeScript, possiamo trovarci nella situazione in cui dobbiamo verificare se il valore di una proprietà o variabile è di tipo null, undefined o vuoto. Di seguito la condizione if di tale situazione.

TypeScript:


<h2>

                    {{(oggetto.Proprietà != null &&  oggetto.Proprietà != undefined && oggetto.Proprietà != "") ? Azione : azion2}}

                 </h2>

 


Questa forma di if può essere più semplice, abbreviata e leggibile, di seguito un diverso approccio.

TypeScript:

<h2>

                    {{oggetto.Proprietà  ? Azione : azion2}}

                 </h2>

 


venerdì 27 febbraio 2026

download gioco Go Ape Ship!

 

download gioco Go Ape Ship

Da qualche giorno sulla piattaforma EpicGames, è disponibile gratuitamente il gioco Go Ape Ship, in lingua inglese, per i sistemi operativi Widnows.

Il gioco è di tipo azione ed è molto semplice, adattato a bambini, ma anche ai meno giovani.

Un gioco molto interessante e multi giocatore.

Per maggiori informazioni ed il download visitate il seguente sito https://store.epicgames.com/it/p/go-ape-ship-53158b

C# webbrower disabilitare i messaggi di errore script

Nel caso che si sta realizzando un progetto di tipo "Windows Application" con la tecnologia .Net , e nel progetto si utilizza il controllo WebBrowser, può capitare che vengano visualizzati i messaggi di errore dell'esecuzione degli script durante l'apertura dei siti.
Per evitare questi messaggi, occorre impostare la proprietà "ScriptErrorsSuppressed" con il valore "true".

Di seguito si riporta il frammento di codice nel linguaggio di programmazione C#


C#

webBrowser1.ScriptErrorsSuppressed = true;


giovedì 26 febbraio 2026

Software gratuito per proteggere le cartelle del pc Windows Protected Folder

 

Software protezione cartelle

Se cercate un software gratuito per la protezione delle cartelle, il programma Protected Folder, qui https://www.iobit.com/it/password-protected-folder.php il sito, può fare al caso vostro.

Il programma è in due versioni, una versione gratuita ed una a pagamento. Il software ed il sito sono in lingua italiana.

Per maggiori informazioni e download visitate il sito indicato.


mercoledì 25 febbraio 2026

martedì 24 febbraio 2026

Strumento online per rimuovere lo sfondo con l'intelligenza artificiale fileconv

 

rimozione sfondo

Se cercate uno strumento online gratuito di rimozione sfondo, che non richiede account o email. il sito https://fileconv.online/remove-bg fornisce tramite l'intelligenza artificiale, la funzionalità per rimuovere lo sfondo dalle immagini.

A volte lo strumento non elimina correttamente lo sfondo.

lunedì 23 febbraio 2026

C# creare una gif animata di tipo bianco e nero con il componente gratuito ImageMagick

In questo esempio di codice, vedremo come creare una gif animata di colore bianco e nera, tramite il linguaggio di programmazione C# ed il componente gratuito ImageMagick.

Dopo aver aggiunto ad un progetto di tipo "Windows Application", il componente gratuito "ImageMagick", in alto, nella dichiarazione dei namespace, aggiungo il riferimento a questa libreria.

Di seguito il frammento di codice di esempio.


C#

using ImageMagick;


Dopo aver aggiunto un pulsante nella form, facciamo doppio click sul pulsante, in modo da passare in visualizzazione codice dell'evento stesso.


Tramite le classi messe a disposizione di questa libreria, uniamo le immagini presenti in una cartella, impostando le stesse dimensioni, l'effetto bianco e nero, ed il tempo tra un'immagine e l'altra, andremo a creare un file di tipo Gif animata.
Di seguito si riporta il codice di esempio delle suddette operazioni, commentato per chiarezza delle varie operazioni.

C#

private void BtnCreaGif_Click(object sender, EventArgs e)

 {

 

  string[] immaginiJpg = Directory.GetFiles(@"C:\Varie\Immagini", "*.jpg");//  

 

  //Oggetto che contiene tutte le immagine per realizzare la gif

  using (var raccoltaImmagini = new MagickImageCollection())

  {

      //Imposto le dimensioni per tutte le immagini

      uint width = 800;

      uint height = 600;

      foreach (var immagine in immaginiJpg)

      {

          //Per ogni immagine imposto le dimensioni, l'effetto e l'aggiungo alla raccolta

          var image = new MagickImage(immagine);                  

          image.Resize(width, height);

          //Aggiungo l'effetto griglio

           image.Grayscale();

          // ApplyEffects(image);

          //Aggiungo l'immagine modifica all'oggetto che crea la gif

          raccoltaImmagini.Add(image);

      }

       // Imposto il ritardo tra i fotogrammi (in centesimi di secondo)

      foreach (var image in raccoltaImmagini)

      {

          image.AnimationDelay = 100; // 1 secondo = 100 centesimi di secondo

      }

      //Creo la gif

      raccoltaImmagini.Write(@"C:\Varie\Immagini\nuovaimmagine4.gif");

  }

 

  MessageBox.Show("GIF creata con successo!");

}


domenica 22 febbraio 2026

C# trasformare un immagine in testo in una nuova immagine di tipo jpg

 

C# da immagine a testo

In questo frammento di codice nel linguaggio di programmazione C#, vedremo come trasformare un file immagine di tipo Jpg, in una nuova immagine formato testo.

Il progetto è di tipo Windows Application.

L'immagine originale verrà trasformata in un testo, utilizzando le classi presenti nello spazio dei nomi System.Drawing .

Di seguito la funzione per ottenere un oggetto di tipo ImageCodecInfo.

C#

    private ImageCodecInfo GetEncoder(ImageFormat format)

    {

        ImageCodecInfo[] codecs = ImageCodecInfo.GetImageDecoders();

        foreach (ImageCodecInfo codec in codecs)

        {

            if (codec.FormatID == format.Guid)

            {

                return codec;

            }

        }

        return null;

    }


Di seguito il codice nell'evento click del pulsante, per generare la nuova immagine.

C#


private void BtnScrittaJpg_Click(object sender, EventArgs e)

{

    try

    {

        //Percorso dell'immagine originale

        string percorsoImmagine = @"C:\varie\panchina.jpg";

 

        //Percorso della nuova immagine in formato jpg

        string percorsoNuovaImmagine = @"C:\varie\panchinaTesto2b.jpg";

 

        //Oggetto per l'immagine originale

        Bitmap immagine = new Bitmap(percorsoImmagine);

 

        //Creo un nuovo oggetto di tipo bitmap con lo stesso formato

        Bitmap nuovaImmagine = new Bitmap(immagine.Width, immagine.Height);

 

        //Creo un oggetto Graphics per disegnare sulla nuova immagine

        Graphics g = Graphics.FromImage(nuovaImmagine);

 

        //Imposto lo sfondo trasparente

        g.Clear(Color.Transparent);

 

        //Oggetto Font per la scritta

        Font font = new Font("Arial", 50, FontStyle.Bold);

 

        //Oggetto Brush per la scritta

        Brush brush = new SolidBrush(Color.White);

 

        //Larghezza ed altezza della scritta

        SizeF size = g.MeasureString("Emanuele", font);

 

        //Definisco la posizione della scritta

        float x = (nuovaImmagine.Width - size.Width) / 2;

        float y = (nuovaImmagine.Height - size.Height) / 2;

 

        //Oggetto GraphicsPath per la scritta

        GraphicsPath path = new GraphicsPath();

        path.AddString("Emanuele", font.FontFamily, (int)font.Style, font.Size, new PointF(x, y), StringFormat.GenericDefault);

 

        //Imposto la modalità di ritaglio

        g.SetClip(path);

 

        //Disegno l'immagine originale sulla nuova immagine

        g.DrawImage(immagine, 0, 0);

 

        //Salvo la nuova immagine in formato JPEG

        ImageCodecInfo jgpEncoder = GetEncoder(ImageFormat.Jpeg);

        System.Drawing.Imaging.Encoder objEncoder = System.Drawing.Imaging.Encoder.Quality;

        EncoderParameters objEncoderParameters = new EncoderParameters(1);

        EncoderParameter objEncoderParameter = new EncoderParameter(objEncoder, 90L);

        objEncoderParameters.Param[0] = objEncoderParameter;

        nuovaImmagine.Save(percorsoNuovaImmagine, jgpEncoder, objEncoderParameters);

        MessageBox.Show("Immagine creata e salvata in " + percorsoNuovaImmagine);

    }

    catch (Exception ex)

    {

        MessageBox.Show("Errore durante il salvataggio:\n" + ex.Message);

    }

}