public class ExcelToPdfReport
{
byte[] _package;
public ExcelToPdfReport(byte[] package)
{
_package = package;
}
public byte[] CreatePdfReport()
{
// Ensure encoding provider is registered for non-Windows platforms
System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance);
using (var excelStream = new MemoryStream(_package))
{
var workbook = new Workbook();
// Very important: Use this to enable cross-platform support internally
workbook.LoadFromStream(excelStream);
// Optional: Adjust layout settings
Worksheet sheet = workbook.Worksheets[0];
sheet.PageSetup.FitToPagesWide = 1;
sheet.PageSetup.FitToPagesTall = 0;
using (var pdfStream = new MemoryStream())
{
// Save to PDF (this will now use SkiaSharp-based rendering internally)
workbook.SaveToStream(pdfStream, FileFormat.PDF);
return pdfStream.ToArray();
}
}
}
}
< /code>
Wenn ich dies jedoch in meiner Produktionsumgebung in einem Linux -Docker -Container ausführe, erhalte ich den folgenden Fehler. />'spire.xls.core.spreadsheet.xlspagesetupbase 'warf eine Ausnahme.FreeSpire.XLS @ 14.2.0
SkiaSharp.NativeAssets.Lunix.NoDependencies @ 3.116.1
Spire.Officefor.NETStandard @ 10.2.0
Das Programm wird auf .net 8.0 .
im Docker -Container ausgeführt Debian 12 Bookworm
Der folgende Code funktioniert lokal auf meinem Windows -Computer; < /p> [code]public class ExcelToPdfReport { byte[] _package; public ExcelToPdfReport(byte[] package) { _package = package; }
public byte[] CreatePdfReport() { // Ensure encoding provider is registered for non-Windows platforms System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance);
using (var excelStream = new MemoryStream(_package)) { var workbook = new Workbook();
// Very important: Use this to enable cross-platform support internally workbook.LoadFromStream(excelStream);
using (var pdfStream = new MemoryStream()) { // Save to PDF (this will now use SkiaSharp-based rendering internally) workbook.SaveToStream(pdfStream, FileFormat.PDF);
return pdfStream.ToArray(); } } } } < /code> Wenn ich dies jedoch in meiner Produktionsumgebung in einem Linux -Docker -Container ausführe, erhalte ich den folgenden Fehler. />'spire.xls.core.spreadsheet.xlspagesetupbase 'warf eine Ausnahme.FreeSpire.XLS @ 14.2.0 SkiaSharp.NativeAssets.Lunix.NoDependencies @ 3.116.1 Spire.Officefor.NETStandard @ 10.2.0 [/code] Das Programm wird auf .net 8.0 . im Docker -Container ausgeführt Debian 12 Bookworm
Ich verwende Spire.xls in meinem Python -Skript. Wenn das Skript aus dem VS -Code ausgeführt wird, funktioniert Evetything wie erwartet. Ich habe mit Pyinstaller ausführbar erstellt. Spezifische DLLs...
Ich verwende Spire.xls in meinem Python -Skript. Wenn das Skript aus dem VS -Code ausgeführt wird, funktioniert Evetything wie erwartet. Ich habe mit Pyinstaller ausführbar erstellt. Spezifische DLLs...
Ich bin sicher, dass sich alle Container im selben Netzwerk befinden.
Ich kann mit redis-cli eine Verbindung zu redisContainer herstellen
Wenn ich meine Spring-Boot-App von der IDE aus starte (nicht...
Ich entschuldige mich für diese Frage im Voraus. Ich bin neu in Docker und habe langsam versucht, es zu lernen. Ich habe mir viele andere Fragen angesehen, um zu sehen, ob ich dies tatsächlich posten...
Zum Beispiel ist mein Betriebssystem Ubuntu 18.04, und ich habe ein Bild basierend auf Ubuntu 24.04 auf diesem System erstellt. Während des Bildbaus habe ich ein C -Programm P im Bild...