K udržování faktur, účetních knih, zásob, účtů, výpočetních dat a dalších sestav široce používáme Excel tabulky. Zatímco PDF je nejoblíbenější formát pro sdílení a tisk dokumentů bez ztráty formátování. V určitých případech můžeme potřebovat převést Excel do PDF, abychom mohli sdílet data Excelu v přenosné podobě. Excelové tabulky můžeme snadno převést na dokumenty PDF programově v cloudu. V tomto článku se naučíme, jak převést Excel do PDF pomocí PHP.
Tento článek bude obsahovat následující témata:
- Převod Excel do PDF REST API a PHP SDK
- Převeďte Excel do PDF pomocí REST API v PHP
- Convert Specific Excel Spreadsheets to PDF in PHP
- Převod Excel do PDF s vodoznakem
- Převeďte Excel do PDF bez použití cloudového úložiště
Převod Excel do PDF REST API a PHP SDK
Pro převod XLSX do PDF použijeme PHP SDK of GroupDocs.Conversion Cloud API. Umožňuje nám bezproblémově převádět dokumenty a obrázky jakéhokoli podporovaného formátu souboru do libovolného formátu, který požadujeme. Nainstalujte jej pomocí následujícího příkazu v konzole:
composer require groupdocscloud/groupdocs-conversion-cloud
Po instalaci použijte autoload od skladatelů k použití sady SDK, jak je uvedeno níže:
Před provedením uvedených kroků získejte své ID klienta a tajný klíč z řídicího panelu. Jakmile budete mít své ID a tajemství, přidejte kód, jak je uvedeno níže:
// Tento příklad kódu ukazuje, jak do kódu přidat ID klienta a tajný klíč.
static $ClientId = '659fe7da-715b-4744-a0f7-cf469a392b73';
static $ClientSecret = 'b377c36cfa28fa69960ebac6b6e36421';
static $ApiBaseUrl = 'https://api.groupdocs.cloud';
static $MyStorage = '';
// Inicializace konfigurace
$configuration = new GroupDocs\Conversion\Configuration();
// Nastavení konfigurací
$configuration->setAppSid(self::$ClientId);
$configuration->setAppKey(self::$ClientSecret);
$configuration->setApiBaseUrl(self::$ApiBaseUrl);
Převeďte Excel do PDF pomocí REST API v PHP
Soubory Excelu můžeme snadno převést na dokumenty PDF programově v cloudu podle následujících kroků:
- Nahrát soubor XLSX do cloudu
- Převést Excel do PDF
- Stáhnout převedený soubor PDF
Nahrajte soubor Excel
Nejprve nahrajeme soubor XLSX do cloudu pomocí následující ukázky kódu:
// Tento příklad kódu ukazuje, jak nahrát soubor XLSX do cloudu.
// Inicializujte instanci rozhraní API
$apiInstance = new GroupDocs\Conversion\FileApi($configuration);
// Vstupní cesta k souboru
$file = "C:\\Files\\Conversion\\sample.xlsx";
// Vytvořit žádost o nahrání souboru
$request = new GroupDocs\Conversion\Model\Requests\UploadFileRequest("sample.xlsx", $file, self::$MyStorage, null);
// Nahrát soubor
$response = $apiInstance->uploadFile($request);
V důsledku toho bude nahraný soubor dostupný v sekce souborů řídicího panelu v cloudu.
Převést Excel do PDF v PHP
Nyní převedeme nahraný soubor XLSX na dokument PDF podle následujících kroků:
- Nejprve vytvořte instanci ConvertApi.
- Dále inicializujte instanci ConvertSettings a nastavte cestu k nahranému souboru XLSX.
- Poté k formátu přiřaďte „pdf“ a zadejte cestu k výstupnímu souboru.
- Dále nastavte různé možnosti SpreadsheetLoadOptions, jako je setOnePagePerSheet atd.
- Volitelně nastavte různé možnosti PdfConvertOptions, jako je setCenterWindow, setMarginTop, setMarginLeft atd.
- Poté vytvořte ConvertDocumentRequest s ConvertSettings jako argumentem.
- Nakonec převeďte voláním metody ConvertApi.convertDocument().
Následující příklad kódu ukazuje, jak převést tabulku Excel na dokument PDF pomocí REST API v PHP.
// Tento příklad kódu ukazuje, jak převést Excel do PDF.
// Inicializujte instanci rozhraní API
$convertApi = new GroupDocs\Conversion\ConvertApi($configuration);
// Definujte nastavení převodu
$settings = new GroupDocs\Conversion\Model\ConvertSettings();
$settings->setStorageName(self::$MyStorage); // Storage
$settings->setFilePath("sample.xlsx"); // Input file
$settings->setFormat("pdf"); // Output format
$settings->setOutputPath("convertedExcel.pdf"); // Output file
// Možnosti načítání tabulky
$loadOptions = new GroupDocs\Conversion\Model\SpreadsheetLoadOptions();
$loadOptions->setHideComments(true); // Show hide comments
$loadOptions->setShowGridLines(false); // Do not Show gridlines
$loadOptions->setOnePagePerSheet(true); // One sheet per page
// Přiřadit možnosti zatížení
$settings->setLoadOptions($loadOptions);
$convertOptions = new GroupDocs\Conversion\Model\PdfConvertOptions();
$convertOptions->setCenterWindow(true); // Center window
$convertOptions->setMarginTop(5); // Top margin
$convertOptions->setMarginLeft(5); // Left margin
$convertOptions->setRemovePdfaCompliance(false); // RemovecCompliance
// Možnosti převodu Assgin
$settings->setConvertOptions($convertOptions);
// Vytvořit žádost o převod dokumentu
$request = new GroupDocs\Conversion\Model\Requests\ConvertDocumentRequest($settings);
// Převést dokument
$response = $convertApi->convertDocument($request);
// Hotovo
echo "Document converted successfully: ", $response[0]->getUrl();
Stáhněte si převedený soubor
Výše uvedená ukázka kódu uloží převedený soubor PDF do cloudu. Lze jej stáhnout pomocí následující ukázky kódu:
// Tento příklad kódu ukazuje, jak stáhnout soubor PDF z cloudu.
// Inicializujte instanci rozhraní API
$apiInstance = new GroupDocs\Conversion\FileApi($configuration);
// Vytvořit požadavek na stažení souboru
$request = new GroupDocs\Conversion\Model\Requests\DownloadFileRequest("convertedExcel.pdf", self::$MyStorage, null);
// Stáhnout soubor
$response = $apiInstance->downloadFile($request);
Převeďte konkrétní tabulky Excelu do PDF v PHP
Můžeme také převést konkrétní tabulky Excelu do dokumentu PDF podle následujících kroků:
- Nejprve vytvořte instanci ConvertApi.
- Dále Inicializujte instanci ConvertSettings.
- Poté nastavte cestu k nahranému souboru XLSX.
- Také přiřaďte formátu „pdf“ a zadejte cestu k výstupnímu souboru.
- Dále inicializujte objekt PdfConvertOptions
- Poté zadejte konkrétní indexy listů v poli odděleném čárkami, které chcete převést.
- Poté vytvořte ConvertDocumentRequest s ConvertSettings jako argumentem.
- Nakonec převeďte voláním metody ConvertApi.convertDocument().
Následující příklad kódu ukazuje, jak převést konkrétní tabulky Excelu na dokument PDF pomocí REST API v PHP. Při nahrávání a stahování souborů postupujte podle výše uvedených kroků.
// Tento příklad kódu ukazuje, jak převést konkrétní listy aplikace Excel do formátu PDF.
// Inicializujte instanci rozhraní API
$convertApi = new GroupDocs\Conversion\ConvertApi($configuration);
// Definujte nastavení převodu
$settings = new GroupDocs\Conversion\Model\ConvertSettings();
$settings->setStorageName(self::$MyStorage);
$settings->setFilePath("sample.xlsx");
$settings->setFormat("pdf");
$settings->setOutputPath("convertedSpecificSheet.pdf");
// Definujte možnosti převodu PDF
$convertOptions = new GroupDocs\Conversion\Model\PdfConvertOptions();
$convertOptions->setPages([2, 4]); // Define pages (sheets) to convert
// Přiřadit možnosti převodu
$settings->setConvertOptions($convertOptions);
// Vytvořit žádost o převod dokumentu
$request = new GroupDocs\Conversion\Model\Requests\ConvertDocumentRequest($settings);
// Převést dokument
$response = $convertApi->convertDocument($request);
// Hotovo
echo "Document converted successfully: ", $response[0]->getUrl();
Můžeme také převést řadu tabulek z Excelu do souboru PDF podle výše uvedených kroků. Musíme však zmínit pouze následující rozsah listů:
$convertOptions = new GroupDocs\Conversion\Model\PdfConvertOptions();
$convertOptions->setFromPage(2);
$convertOptions->setPagesCount(4);
Převod Excel do PDF s vodoznakem
Můžeme převést tabulky aplikace Excel na dokument PDF a přidat vodoznak do převedeného dokumentu podle následujících kroků:
- Nejprve vytvořte instanci ConvertApi.
- Dále Inicializujte instanci ConvertSettings.
- Poté nastavte cestu k nahranému souboru XLSX.
- Také přiřaďte formátu „pdf“ a zadejte cestu k výstupnímu souboru.
- Dále inicializujte objekt WatermarkOptions a nastavte text vodoznaku, barvu, šířku, výšku atd.
- Poté definujte možnosti PdfConvertOptions a přiřaďte možnosti WatermarkOptions.
- Poté vytvořte ConvertDocumentRequest s ConvertSettings jako argumentem.
- Nakonec převeďte voláním metody ConvertApi.convertDocument().
Následující ukázka kódu ukazuje, jak převést tabulku Excel na dokument PDF a přidat vodoznak do převedeného dokumentu PDF pomocí REST API v PHP. Při nahrávání a stahování souborů postupujte podle výše uvedených kroků.
// Tento příklad kódu ukazuje, jak převést Excel do PDF s vodoznakem.
// Inicializujte instanci rozhraní API
$convertApi = new GroupDocs\Conversion\ConvertApi($configuration);
// Definujte nastavení převodu
$settings = new GroupDocs\Conversion\Model\ConvertSettings();
$settings->setStorageName(self::$MyStorage);
$settings->setFilePath("sample.xlsx");
$settings->setFormat("pdf");
$settings->setOutputPath("convertedWithWatermark.pdf");
// Definujte vodoznak
$watermark = new GroupDocs\Conversion\Model\WatermarkOptions();
$watermark->setText("CONFIDENTIAL");
$watermark->setBold(true);
$watermark->setFontSize(44);
$watermark->setColor("Gray");
$watermark->setBackground(false);
$watermark->setRotationAngle(30);
$watermark->setLeft(100);
$watermark->setTop(250);
// Definujte možnosti převodu PDF
$convertOptions = new GroupDocs\Conversion\Model\PdfConvertOptions();
// Nastavit vodoznak
$convertOptions->setWatermarkOptions($watermark);
// Přiřadit možnosti převodu
$settings->setConvertOptions($convertOptions);
// Vytvořit žádost o převod dokumentu
$request = new GroupDocs\Conversion\Model\Requests\ConvertDocumentRequest($settings);
// Převést dokument
$response = $convertApi->convertDocument($request);
// Hotovo
echo "Document converted successfully: ", $response[0]->getUrl();
Převeďte Excel do PDF bez použití cloudového úložiště
Můžeme převést Excel do PDF bez použití cloudového úložiště podle následujících kroků:
- Nejprve vytvořte instanci ConvertApi.
- Dále vytvořte ConvertDocumentDirectRequest s cílovým formátem a cestou vstupního souboru jako argumenty.
- Nakonec převeďte voláním metody convertDocumentDirect().
Následující ukázka kódu ukazuje, jak převést tabulku aplikace Excel na dokument PDF bez použití cloudového úložiště. Vstupní soubor předáme v těle požadavku a výstupní soubor obdržíme v odpovědi API.
// Tento příklad kódu ukazuje, jak převést Excel do PDF bez použití cloudového úložiště.
// Inicializujte instanci rozhraní API
$apiInstance = new GroupDocs\Conversion\KonvertovatApi($configuration);
// Vstupní cesta k souboru
$filePath = "C:\\Files\\Conversion\\sample.xlsx";
// Připravte přímou žádost o převod dokumentu
$request = new GroupDocs\Conversion\Model\Requests\KonvertovatDocumentDirectRequest("pdf", $filePath);
// Konvertovat
$result = $apiInstance->convertDocumentDirect($request);
// Hotovo
echo "Document converted: " . $result->getSize();
Vyzkoušejte online
Vyzkoušejte prosím následující bezplatný online nástroj pro převod XLSX do PDF, který je vyvinut pomocí výše uvedeného API. https://products.groupdocs.app/conversion/xlsx-to-pdf
Závěr
V tomto článku jsme se naučili, jak:
- převést Excel do PDF pomocí PHP;
- převést konkrétní excelové tabulky do PDF v PHP;
- přidat vodoznak do převedeného dokumentu PDF;
- převádět bez použití cloudového úložiště;
- nahrát soubor XLSX do cloudu;
- stáhnout soubor PDF z cloudu.
Kromě toho se můžete dozvědět více o GroupDocs.Conversion Cloud API pomocí dokumentace. Poskytujeme také sekci API Reference, která vám umožní vizualizovat a pracovat s našimi API přímo prostřednictvím prohlížeče. V případě jakýchkoliv nejasností nás neváhejte kontaktovat na fóru.