Aggiungi codice QR alla presentazione di PowerPoint usando C#

PowerPoint è uno strumento popolare utilizzato per presentare informazioni sotto forma di presentazione. Dove ogni diapositiva contiene informazioni/dati specifici sotto forma di testo, elenco, immagine, video, grafici, ecc. In una presentazione PowerPoint, possiamo incorporare qualsiasi URL specifico, collegamento all’account di social media del presentatore o un indirizzo e-mail utilizzando un codice QR . In questo modo, le persone con un lettore QR sul proprio smartphone possono acquisire l’URL senza doverlo annotare. In questo articolo impareremo come aggiungere un codice QR a una presentazione PowerPoint usando C#.

In questo articolo verranno trattati i seguenti argomenti:

Cos’è il codice QR

Un codice QR (Quick Response) è un tipo di codice a barre a matrice costituito da una matrice di quadrati bianchi e neri. Come mostra il nome, il codice QR consente agli utenti di accedere alle informazioni istantaneamente durante la scansione. Viene utilizzato per memorizzare informazioni alfanumeriche codificate che possono essere decodificate dai lettori di codici QR disponibili su dispositivi digitali, come i telefoni cellulari.

API C# per aggiungere codice QR alla presentazione di PowerPoint

Per generare un codice QR e aggiungerlo ai file PPT o PPTX, seguiremo una procedura in due passaggi. In primo luogo, utilizzeremo l’API Aspose.Slides for .NET per creare o caricare una presentazione PowerPoint, quindi genereremo e aggiungeremo l’immagine del codice QR alle diapositive della presentazione utilizzando Aspose.BarCode for .NET API.

Aspose.Slides per .NET API consente di leggere, scrivere, proteggere, modificare e convertire le presentazioni dei formati supportati nelle applicazioni .NET senza utilizzare MS PowerPoint. Offre varie classi per eseguire diverse operazioni. La classe Presentazione dell’API consente di creare una nuova presentazione o caricare un file di presentazione esistente nell’applicazione. Il metodo Save() di questa classe salva la presentazione nel formato fornito sul percorso del file specificato. L’interfaccia ISlide dell’API rappresenta una diapositiva in una presentazione.

Utilizzeremo l’API Aspose.BarCode per .NET per generare un codice QR. Consente di generare vari tipi di codici a barre supportati. A tale scopo, fornisce la classe BarcodeGenerator per generare il codice QR o il codice a barre del EncodeType specificato. Possiamo salvare l’immagine QR/codice a barre generata usando il metodo Save() di questa classe. L’API fornisce anche l’enumerazione BarCodeImageFormat per specificare i formati di salvataggio. Possiamo leggere il codice a barre o il codice QR dalle immagini utilizzando la classe BarCodeReader dell’API.

Si prega di scaricare le DLL delle API o installarle utilizzando NuGet.

PM> Install-Package Aspose.BarCode
PM> Install-Package Aspose.Cells

Genera e aggiungi codice QR alla presentazione in C#

Possiamo creare una nuova presentazione e aggiungere un’immagine del codice QR alla diapositiva della presentazione seguendo i passaggi indicati di seguito:

  1. Innanzitutto, crea una presentazione vuota usando la classe Presentazione.
  2. Quindi, crea un’istanza della classe BarcodeGenerator. Prende il tipo di codifica come argomento.
  3. Quindi, aggiungi il testo da codificare e imposta altre proprietà del codice a barre opzionali.
  4. Quindi, crea un’istanza dell’oggetto flusso di memoria.
  5. Quindi, chiama il metodo BarcodeGenerator.Save() per salvare l’immagine del codice QR nel flusso di memoria.
  6. Quindi, chiama il metodo AddImage() per aggiungere l’immagine alla raccolta image della presentazione.
  7. Quindi, chiama il metodo InsertEmptySlide() per inserire una diapositiva vuota in corrispondenza dell’indice specificato con un layout del titolo.
  8. Quindi, prendi la diapositiva appena inserita in base al suo indice.
  9. Successivamente, inserisci l’immagine del codice QR sulla diapositiva utilizzando il metodo AddPictureFrame().
  10. Facoltativamente, impostare la formattazione della cornice dell’immagine come tipo di riempimento, colore, larghezza, rotazione, ecc.
  11. Infine, chiama il metodo Presentation.Save(). Prende il percorso del file PPTX di output e SaveFormat come argomenti.

L’esempio di codice seguente mostra come generare e aggiungere un QR a una nuova diapositiva di presentazione usando C#.

// Questo esempio di codice mostra come aggiungere codice QR alla presentazione.
// Il percorso della directory dei documenti.
string dataDir = @"C:\Files\BarCode\";

// Crea un'istanza della classe Presentation
Presentation presentation = new Presentation();

// Istanziare oggetto codice a barre lineare, impostare il tipo di simbologia per il codice a barre
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.QR);

// Testo da codificare nel codice QR
generator.CodeText = "https://www.aspose.com";

// Nascondi il testo sul display
generator.Parameters.Barcode.CodeTextParameters.Location = CodeLocation.None;

// Imposta la dimensione del QR
generator.Parameters.Barcode.XDimension.Pixels = 10;

// Creazione del flusso di memoria e salvataggio dell'immagine del codice QR nel flusso di memoria
Stream ms = new MemoryStream();
generator.Save(ms, BarCodeImageFormat.Bmp);

// Aggiungi un'immagine alla presentazione
System.Drawing.Image img = new Bitmap(ms);
IPPImage image = presentation.Images.AddImage(img);

// Inserisci una diapositiva vuota all'indice specificato con un layout del titolo
IMasterLayoutSlideCollection layoutSlides = presentation.Masters[0].LayoutSlides;
var layoutSlide = layoutSlides.GetByType(SlideLayoutType.Title);
presentation.Slides.InsertEmptySlide(1, layoutSlide);

// Ottieni la diapositiva dal suo indice
ISlide slide = presentation.Slides[1];

// Aggiunge una cornice con l'altezza e la larghezza equivalenti dell'immagine
IPictureFrame pf = slide.Shapes.AddPictureFrame(Aspose.Slides.ShapeType.Rectangle, 235, 200, image.Width, image.Height, image);

// Applicare un po' di formattazione a PictureFrame
pf.LineFormat.FillFormat.FillType = Aspose.Slides.FillType.Solid;
pf.LineFormat.FillFormat.SolidFillColor.Color = System.Drawing.Color.Blue;
pf.LineFormat.Width = 3;
pf.Rotation = 0;

// Salva la presentazione
presentation.Save(dataDir + "presentation.pptx", Aspose.Slides.Export.SaveFormat.Pptx);
Genera e aggiungi codice QR alla presentazione in C#

Genera e aggiungi codice QR alla presentazione in C#.

Aggiungi codice QR alla presentazione esistente in C#

Possiamo caricare una presentazione esistente e aggiungere un’immagine del codice QR seguendo i passaggi indicati di seguito:

  1. Innanzitutto, carica una presentazione esistente utilizzando la classe Presentation.
  2. Quindi, crea un’istanza della classe BarcodeGenerator. Sono necessari il tipo di codifica e il testo per codificare come argomenti.
  3. Quindi, crea un’istanza dell’oggetto flusso di memoria.
  4. Successivamente, chiama il metodo BarcodeGenerator.Save() per salvare l’immagine del codice QR nel flusso di memoria.
  5. Quindi, chiama il metodo AddImage() per aggiungere l’immagine alla raccolta image della presentazione.
  6. Quindi, prendi la diapositiva specifica in base al suo indice.
  7. Successivamente, inserisci l’immagine del codice QR sulla diapositiva utilizzando il metodo AddPictureFrame().
  8. Infine, chiama il metodo Presentation.Save(). Prende il percorso del file PPTX di output e SaveFormat come argomenti.

L’esempio di codice seguente mostra come generare e aggiungere un QR a una presentazione esistente usando C#.

// Questo esempio di codice mostra come aggiungere codice QR alla presentazione esistente.
// Il percorso della directory dei documenti.
string dataDir = @"C:\Files\BarCode\";

// Carica una presentazione esistente
Presentation presentation = new Presentation(dataDir + "presentation.pptx");

// Istanziare oggetto codice a barre lineare, impostare il testo del codice e il tipo di simbologia per il codice a barre
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.QR, "https://www.aspose.com");

// Nascondi il testo sul display
generator.Parameters.Barcode.CodeTextParameters.Location = CodeLocation.None;

// Imposta la dimensione del QR
generator.Parameters.Barcode.XDimension.Pixels = 10;

// Creazione del flusso di memoria e salvataggio dell'immagine del codice QR nel flusso di memoria
Stream ms = new MemoryStream();
generator.Save(ms, BarCodeImageFormat.Bmp);

// Aggiungi un'immagine alla diapositiva
System.Drawing.Image img = new Bitmap(ms);
IPPImage image = presentation.Images.AddImage(img);

// Ottieni la diapositiva dal suo indice
ISlide slide = presentation.Slides[0];

// Aggiunge una cornice con l'altezza e la larghezza equivalenti dell'immagine
IPictureFrame pf = slide.Shapes.AddPictureFrame(Aspose.Slides.ShapeType.Rectangle, 235, 100, image.Width, image.Height, image);

// Salvare le modifiche
presentation.Save(dataDir + "presentation1.pptx", Aspose.Slides.Export.SaveFormat.Pptx);
Aggiungi codice QR alla presentazione esistente in C#

Aggiungi codice QR alla presentazione esistente in C#.

Aggiungi codice a barre alla presentazione di PowerPoint in C#

Allo stesso modo, possiamo anche generare un’immagine di codice a barre e aggiungerla alla presentazione seguendo i passaggi menzionati in precedenza. Tuttavia, dobbiamo solo impostare EncodeType diverso da QR o GS1QR nel secondo passaggio. Potrebbe anche essere necessario regolare la posizione dell’immagine nel passaggio 7.

Nell’esempio di codice seguente viene illustrato come aggiungere un codice a barre a una presentazione di PowerPoint usando C#.

// Questo esempio di codice mostra come aggiungere codice a barre alla presentazione.
// Il percorso della directory dei documenti.
string dataDir = @"C:\Files\BarCode\";

// Istanziare oggetto codice a barre lineare, impostare il testo del codice e il tipo di simbologia per il codice a barre
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.Code39Standard, "1234567");

// Creazione del flusso di memoria e salvataggio dell'immagine del codice a barre nel flusso di memoria
Stream ms = new MemoryStream();
generator.Save(ms, BarCodeImageFormat.Bmp);

// Crea un'istanza della classe Presentation
Presentation presentation = new Presentation();

// Ottieni la diapositiva dal suo indice
ISlide slide = presentation.Slides[0];

// Aggiungi un'immagine alla diapositiva
System.Drawing.Image img = new Bitmap(ms);
IPPImage image = presentation.Images.AddImage(img);

// Aggiunge una cornice con l'altezza e la larghezza equivalenti dell'immagine
IPictureFrame pf = slide.Shapes.AddPictureFrame(Aspose.Slides.ShapeType.Rectangle, 200, 100, image.Width, image.Height, image);

// Salvare le modifiche
presentation.Save(dataDir + "presentation2.pptx", Aspose.Slides.Export.SaveFormat.Pptx);
Aggiungi codice a barre alla presentazione di PowerPoint in C#.

Aggiungi codice a barre alla presentazione di PowerPoint in C#.

Leggi il codice QR dalla presentazione in C#

Siamo in grado di riconoscere qualsiasi codice a barre o immagine di codice QR disponibile su qualsiasi diapositiva della presentazione seguendo i passaggi indicati di seguito:

  1. Innanzitutto, carica una presentazione esistente utilizzando la classe Presentation.
  2. Quindi, scorrere tutte le immagini nella raccolta di immagini della presentazione.
  3. Quindi, salva l’immagine nello stream.
  4. Quindi, crea un’istanza della classe BarCodeReader con flusso di immagini e DecodeType come argomenti.
  5. Dopodiché, chiama il metodo ReadBarCodes() per ottenere l’oggetto BarCodeResult.
  6. Infine, mostra le informazioni sul codice QR.

L’esempio di codice seguente mostra come leggere un’immagine di codice QR da una presentazione usando C#.

// Questo esempio di codice mostra come leggere il codice QR dalla presentazione.
// Il percorso della directory dei documenti.
string dataDir = @"C:\Files\BarCode\";

// Carica la presentazione
Presentation presentation = new Presentation(dataDir + "presentation.pptx");

// Ottieni immagini di presentazione
var images = presentation.Images;

// Passa in rassegna tutte le immagini
foreach (IPPImage image in images)
{
  var code = image.SystemImage;
  // Salva l'immagine nel flusso di memoria
  MemoryStream imgStream = new MemoryStream();
  code.Save(imgStream, ImageFormat.Bmp);

  // Riconosci il codice a barre dal flusso di immagini sopra
  using (BarCodeReader reader = new BarCodeReader(new Bitmap(imgStream), DecodeType.QR))
  {
    foreach (BarCodeResult result in reader.ReadBarCodes())
    {
      Console.WriteLine("Codetext found: " + result.CodeText);
      Console.WriteLine("Symbology: " + result.CodeType);
    }
  }
}
Codetext found: https://www.aspose.com
Symbology: QR

Ottieni una licenza gratuita

Puoi ottenere una licenza temporanea gratuita per provare la libreria senza limitazioni di valutazione.

Conclusione

In questo articolo abbiamo imparato a:

  • creare una presentazione PowerPoint a livello di codice;
  • aggiungi una nuova diapositiva nella presentazione con un layout diapositiva predefinito;
  • generare un’immagine del codice QR e aggiungerla alla presentazione;
  • creare un codice a barre e inserirlo nella presentazione;
  • leggere un’immagine QR da una presentazione PowerPoint usando C#.

Inoltre, puoi saperne di più su Aspose.BarCode per .NET API usando la documentazione. In caso di ambiguità, non esitare a contattarci sul forum.

Guarda anche