Anzeige

XLSX in PDF Konvertieren mittels COM


MS-Tech

Erfahrenes Mitglied
#1
Hallo Zusammen,

ich betreibe einen Windows 2012 Server. Drauf befindet sich ein Apache 2.4, PHP 7.2 etc. Nun möchte ich gerne eine Excel-Datei in PDF konvertieren. Ich habe gelesen, dass auf Windows-Systemen dies mittels COM-Interface möglich ist. In PHP selber habe ich die DLL eingebunden.

Ich habe nun eine Test-Klasse gebaut.

PHP:
$xlapp = new COM("Excel.Application") or Die ("Did not instantiate Excel");

// WORKBOOK AND WORKSHEET OBJECTS
$wbk = $xlapp->Workbooks->Open("C:\\Apache24\\htdocs\\test\\test.xlsx");   
$wks = $wbk->Worksheets(1);

// OUTPUT WORKSHEET TO PDF
$xlTypePDF = 0;
$xlQualityStandard = 0;

// OPEN WORKBOOK TO SCREEN
$xlapp->Visible = true;

try {
    $wks->ExportAsFixedFormat($xlTypePDF, "C:\\Apache24\\htdocs\\test\\test.pdf", $xlQualityStandard);

} catch(com_exception $e) { 
    echo $e->getMessage()."\n";
    exit;
}

// END PROCESS / FREE RESOURCES
$xlapp = NULL;
unset($xlapp);
Es funktioniert soweit, bis die Methode ExportAsFixedFormat aufgefrufen wird. Dann geht nichts weiter. Es wird eine Temp-Datei angelegt, aber diese ist immer 0 KB. Es sieht so aus, als wenn nichts geschrieben wird.

Muss ich hier noch etwas konfigurieren? Hat jemand ne Idee?

Grüße
MS-Tech
 
Anzeige
Anzeige