Documentconversievoortgang programmatisch volgen in .NET

Invoering

Wilt u uw documentconversieproces verbeteren met Aspose.Cells voor .NET? Dan bent u hier aan het juiste adres! In deze tutorial duiken we diep in het bijhouden van de conversievoortgang van Excel-documenten terwijl ze worden omgezet naar PDF-formaat. We leiden u niet alleen door de essentiële stappen om dit te bereiken, maar we strooien ook wat nuttige inzichten in het proces. Dus laten we beginnen!

Vereisten

Voordat we dieper ingaan op het bijhouden van documentconversie, zijn er een paar voorwaarden waaraan u moet voldoen:

  1. Basiskennis van C#: Omdat we C# gaan gebruiken om te coderen, is een basiskennis van deze programmeertaal handig.
  2. Visual Studio Installed: Dit zal dienen als onze ontwikkelomgeving. U kunt elke versie gebruiken die u wilt, maar de nieuwste is altijd een goede keuze.
  3. Aspose.Cells voor .NET: Zorg ervoor dat u Aspose.Cells hebt geïnstalleerd. U kunt het downloaden van deAspose-website.
  4. Een Excel-bestand: Zorg dat u een voorbeeld-Excel-bestand gereed hebt voor conversie. U kunt een eenvoudig.xlsx bestand om te volgen.

Pakketten importeren

Nu we onze vereisten hebben behandeld, is het tijd om de benodigde pakketten te importeren naar uw C#-project. Dit is hoe u dat doet:

Een nieuw project maken

  1. Open Visual Studio en maak een nieuw project. Kies een Console App-sjabloon voor de eenvoud.

Verwijzing naar Aspose.Cells toevoegen

  1. Klik met de rechtermuisknop op de References in de Solution Explorer, selecteer Add Reference en navigeer naar de Aspose.Cells-assembly als deze niet automatisch is toegevoegd. U kunt NuGet Package Manager ook gebruiken door de volgende opdracht uit te voeren in de Package Manager Console:
Install-Package Aspose.Cells

Naamruimten importeren

  1. Bovenaan jeProgram.cs bestand, voeg de volgende using-richtlijn toe:
using Aspose.Cells.Rendering;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

We zijn nu helemaal klaar met het opzetten van ons project!

Nu de basis is gelegd, kunnen we het daadwerkelijke proces van het bijhouden van documentconversie opsplitsen in behapbare stappen.

Stap 1: Definieer uw mappen

Begin met het specificeren van de directory’s waar uw bron- en uitvoerbestanden zich bevinden. Dit is hoe u dat doet:

// Bron directory
string sourceDir = "Your Document Directory";
// Uitvoermap
string outputDir = "Your Document Directory";

Zorg ervoor dat u vervangt"Your Document Directory" met het werkelijke pad op uw systeem. Dit zal helpen bij het eenvoudig vinden van uw bestanden.

Stap 2: Laad de werkmap

Vervolgens moet u uw Excel-werkmap laden met behulp van deWorkbook klas. Zo doe je dat:

Workbook workbook = new Workbook(sourceDir + "PagesBook1.xlsx");

Deze regel code creëert eenWorkbook object waarmee we kunnen communiceren met het Excel-bestand dat we hebben opgegeven.

Stap 3: PDF-opslagopties instellen

Laten we nu de PDF-opslagopties instellen. Dit is waar de magie van het bijhouden van de voortgang begint. U maakt een instantie vanPdfSaveOptions en wijs er een callback aan toe.

PdfSaveOptions pdfSaveOptions = new PdfSaveOptions();
pdfSaveOptions.PageSavingCallback = new TestPageSavingCallback();

Door een aangepaste callback toe te wijzen (TestPageSavingCallback), kunnen we onze eigen logica implementeren om de voortgang van de paginaconversie te volgen.

Stap 4: Sla de werkmap op als PDF

Nu alles is ingesteld, is het tijd om uw werkmap op te slaan als PDF. Gebruik deSave methode van deWorkbook klasse als volgt:

workbook.Save(outputDir + "DocumentConversionProgress.pdf", pdfSaveOptions);

Deze regel activeert het conversieproces en roept onze callbackmethoden aan terwijl de pagina’s worden verwerkt.

Stap 5: Implementeer de callbackklasse

Laten we nu deTestPageSavingCallback klasse. Hier definieert u wat er gebeurt aan het begin en einde van het opslaan van elke pagina.

public class TestPageSavingCallback : IPageSavingCallback
{
    public void PageStartSaving(PageStartSavingArgs args)
    {
        Console.WriteLine("Start saving page index {0} of pages {1}", args.PageIndex, args.PageCount);
        // Geef geen pagina's weer vóór pagina-index 2.
        if (args.PageIndex < 2)
        {
            args.IsToOutput = false;
        }
    }
    public void PageEndSaving(PageEndSavingArgs args)
    {
        Console.WriteLine("End saving page index {0} of pages {1}", args.PageIndex, args.PageCount);
        // Geen pagina's na pagina-index 8 weergeven.
        if (args.PageIndex >= 8)
        {
            args.HasMorePages = false;
        }
    }
}
  • PageStartSavingDeze methode wordt aangeroepen net voordat een pagina begint met opslaan. Hier loggen we de start van het opslagproces voor elke pagina. Daarnaast kunnen we bepalen of de pagina moet worden uitgevoerd of niet. In dit geval worden pagina’s vóór index 2 overgeslagen.
  • PageEndSaving: Deze methode wordt aangeroepen nadat een pagina is opgeslagen. Hiermee kunt u loggen wanneer het opslaan voor elke pagina eindigt en bepalen of er meer pagina’s moeten worden verwerkt. In dit voorbeeld stoppen we na pagina-index 8.

Conclusie

Gefeliciteerd! U hebt met succes een systeem geïmplementeerd om de voortgang van documentconversie bij te houden met Aspose.Cells voor .NET. Met deze aanpak kunt u niet alleen het conversieproces bewaken, maar hebt u ook controle over welke pagina’s u wilt opnemen of uitsluiten, waardoor uw documentbeheer veel efficiënter wordt.

Veelgestelde vragen

Wat is Aspose.Cells?

Aspose.Cells is een krachtige .NET-bibliotheek waarmee ontwikkelaars programmatisch Excel-bestanden kunnen maken, bewerken en converteren.

Hoe kan ik een gratis proefversie van Aspose.Cells krijgen?

U kunt een gratis proefversie downloaden van deAspose-website.

Is het mogelijk om het conversieproces aan te passen?

Ja, met behulp van callbacks kunt u aanpassen hoe pagina’s tijdens de conversie worden verwerkt.

Kan ik de naam van het uitvoerbestand bepalen?

Absoluut! U kunt elke naam voor uw uitvoerbestand opgeven wanneer u de werkmap opslaat.

Waar kan ik ondersteuning vinden voor Aspose.Cells?

U kunt ondersteuning krijgen door deAspose-forum.