Soubory Excel (XLS, XLSX) a PDF patří mezi formáty dokumentů, které jsou široce používány téměř v každém podnikání. Pro takové běžně používané soubory existuje mnoho scénářů, ve kterých potřebujeme převést jeden soubor do jiného formátu. V tomto článku se naučíme různé způsoby, jak převést excelové tabulky do formátu PDF pomocí C# s aplikacemi .NET.
- .NET API pro převod souborů Excel do PDF
- Převod tabulek Excelu do PDF
- Konverze posloupnosti listů Excelu do PDF
- Konverze konkrétního seznamu Excel listů do PDF
- Převést vybraný rozsah buněk z listu Excel do PDF
.NET API pro převod souborů Excel do PDF
GroupDocs.Conversion poskytuje rozhraní API, která umožňují převod souborů aplikace Excel do formátu PDF v rámci aplikací .NET. V tomto článku použijeme GroupDocs.Conversion for .NET k převodu dat souborů Excel XLS/XLSX do formátu PDF. Kromě toho rozhraní API podporuje konverzi mnoha dalších formátů souborů, jako jsou dokumenty pro zpracování textu, tabulky, prezentace, elektronické knihy, obrázky atd., které jsou zmíněny v dokumentaci.
Můžete si stáhnout DLL nebo instalační program MSI z části ke stažení nebo nainstalovat API do vaší aplikace .NET prostřednictvím NuGet.
PM> Install-Package GroupDocs.Conversion
Převod tabulek Excelu do PDF - C#
Následující kroky převedou celý sešit (všechny listy) do formátu PDF pomocí C#.
- Připravte možnosti načítání pomocí SpreadsheetLoadOptions.
- Načtěte excelovou tabulku pomocí Konvertor.
- Voláním metody Convert() pomocí PdfConvertOptions převedete všechny listy a uložíte je do formátu PDF.
Níže je uveden zdrojový kód C# pro převod kompletního excelového sešitu do PDF v rámci aplikace .NET.
/*
* Převeďte všechny excelové listy do formátu PDF pomocí C#
*/
// Připravte možnosti načítání a rozsah pro zdrojový soubor XLSX
Func<LoadOptions> loadOptions =() => new SpreadsheetLoadOptions
{
OnePagePerSheet = true
};
using (var converter = new GroupDocs.Conversion.Converter(@"path/spreadsheet.xlsx", loadOptions))
{
// Převeďte a uložte tabulku ve formátu PDF
converter.Convert(@"path/all-sheets-converted.pdf", new PdfConvertOptions());
}
Sekvence převodu tabulek Excelu do PDF - C#
Ne vždy je potřeba transformovat celý sešit. Můžeme také převést libovolný po sobě jdoucí počet listů. Následují kroky pro převod libovolné podsekvence listu sešitu aplikace Excel do formátu PDF pomocí jazyka C#.
- Načtěte soubor Excel pomocí Konvertor.
- Definujte možnosti převodu pomocí PdfConvertOptions.
- Postupně nastavte počáteční číslo listu a počet dalších listů.
- Voláním metody Convert() s možnostmi převodu získáte podmnožinu listů v pořadí uložené ve formátu PDF.
Následuje zdrojový kód C#, který převádí listy v pořadí, tj. čísla listů 2, 3 a 4 do formátu PDF v rámci aplikace .NET.
/*
* Převeďte sekvenci listů aplikace Excel do formátu PDF pomocí C#
*/
using (var converter = new GroupDocs.Conversion.Converter(@"path/spreadsheet.xlsx"))
{
// Nastavte počáteční číslo listu a počet po sobě jdoucích listů
var convertOptions = new PdfConvertOptions()
{
PageNumber = 2,
PagesCount = 3
};
// Převeďte a uložte tabulku ve formátu PDF
converter.Convert(@"path/sequential-sheets-converted.pdf", convertOptions);
}
Konverze konkrétních Excelových listů do PDF – C#
Můžeme jednoduše poskytnout seznam čísel listů pro konverzi konkrétních listů. Níže jsou uvedeny kroky, jak převést jakýkoli konkrétní seznam čísel listů do formátu PDF pomocí C#.
- Načtěte soubor tabulky pomocí Konvertor.
- Vyberte čísla listů a nastavte je jako seznam pomocí PdfConvertOptions.
- Voláním metody Convert() s možnostmi převodu převedete uvedené listy do formátu PDF.
Následující fragment kódu C# převádí čísla listů 1, 3 a 5 do formátu PDF v rámci aplikace .NET.
/*
* Převeďte zadaný seznam listů aplikace Excel do formátu PDF pomocí C#
*/
using (var converter = new GroupDocs.Conversion.Converter(@"path/spreadsheet.xlsx"))
{
// Při převodu nastavte seznam na čísla listů
var convertOptions = new PdfConvertOptions()
{
Pages = new System.Collections.Generic.List<int> { 1,3,5}
};
// Převeďte a uložte tabulku do formátu PDF
converter.Convert(@"path/selected-sheets-conversion.pdf", convertOptions);
}
Převést vybraný rozsah buněk listu Excel do PDF - C#
V neposlední řadě, ve skutečnosti nejsložitější, můžeme také převést libovolný rozsah buněk listu (listů) aplikace Excel téměř podobným způsobem jako jiné přístupy. Následují kroky k převodu libovolného rozsahu buněk listu (listů) sešitu do formátu PDF pomocí C#.
- Nejprve definujte rozsah buněk pro převod pomocí SpreadsheetLoadOptions.
- Načtěte soubor tabulky pomocí Konvertor.
- Vyberte listy buď podle přesných čísel listů nebo podsekvencí pomocí PdfConvertOptions.
- Voláním metody Convert() s možnostmi převodu převedete vybraný rozsah buněk vybraných listů do formátu PDF.
Následující kód převede rozsah buněk (A1:C20) čísel listů 2, 3 a 4 do formátu PDF pomocí C#.
/*
* Převeďte zadaný rozsah buněk zadaných listů aplikace Excel do formátu PDF pomocí C#
*/
// Připravte možnosti načítání a rozsah pro zdrojový soubor XLSX
Func<LoadOptions> loadOptions =() => new SpreadsheetLoadOptions
{
ConvertRange = "A1:C20"
};
using (var converter = new Converter(@"path/spreadsheet.xlsx", loadOptions))
{
var convertOptions = new PdfConvertOptions()
{
PageNumber = 2,
PagesCount = 3
// Stránky = nový System.Collections.Generic.List<int> { 2,3,4}
};
// Po převodu uložit jako PDF
converter.Convert(@"path/cell-range-converted.pdf", convertOptions);
}
Závěr
Na závěr jsme se naučili různé způsoby převodu tabulek Excelu do formátu PDF pomocí C#. Nejprve jsme se snažili převést celý sešit do formátu PDF, poté jsme převedli dílčí posloupnost listů. Později jsme se naučili, jak převést libovolný list (listy) poskytnutím seznamu přesných čísel listů, a nakonec jsme získali soubor PDF z vybraného rozsahu buněk vybraných listů.
Další informace o rozhraní API GroupDocs.Conversion naleznete v dokumentaci. V případě dotazů nás kontaktujte prostřednictvím fóra.