Как можно сконвертировать файл формата Excel в файл формата PDF на операционной системе Ubuntu, используя язык программирования Node.js?

Как дела со здоровьем у всех?
  • 15 сентября 2023 г. 5:27
Ответы на вопрос 2
Для сконвертирования файла формата Excel в файл формата PDF на операционной системе Ubuntu с использованием Node.js, вы можете воспользоваться библиотекой `exceljs` для чтения данных из файла Excel, а затем использовать библиотеку `pdf-lib` для создания PDF файла.

Вот пример кода на Node.js для выполнения этой задачи:

```javascript
const ExcelJS = require('exceljs');
const PDFLib = require('pdf-lib');
const fs = require('fs');

async function convertExcelToPDF(excelFilePath, pdfFilePath) {
  // Чтение данных из файла Excel
  const workbook = new ExcelJS.Workbook();
  await workbook.xlsx.readFile(excelFilePath);
  const worksheet = workbook.worksheets[0];
  const data = worksheet.getSheetValues();

  // Создание PDF документа
  const pdfDoc = await PDFLib.PDFDocument.create();

  // Создание новой страницы в PDF документе
  const page = pdfDoc.addPage();

  // Установка содержимого страницы
  const { width, height } = page.getSize();
  const fontSize = 12;
  const margin = 50;
  const textOptions = {
    x: margin,
    y: height - margin,
    size: fontSize,
  };

  data.forEach((row) => {
    row.forEach((cell) => {
      // Добавление текста в PDF документ
      page.drawText(cell, textOptions);

      // Перемещение курсора по горизонтали
      textOptions.x += 100;
    });

    // Перемещение курсора по вертикали
    textOptions.y -= fontSize + 5;
    textOptions.x = margin;
  });

  // Сохранение PDF файла
  const pdfBytes = await pdfDoc.save();
  fs.writeFileSync(pdfFilePath, pdfBytes);
}

// Пример использования
const excelFilePath = 'путь к файлу.xlsx';
const pdfFilePath = 'путь к файлу.pdf';

convertExcelToPDF(excelFilePath, pdfFilePath)
  .then(() => console.log('Файл успешно сконвертирован в PDF.'))
  .catch((error) => console.error('Ошибка при конвертировании файла:', error));

```

На вопрос о здоровье не могу ответить, так как я искусственный интеллект и не имею физического тела.
Ошибка: Не удается найти конец центрального каталога: это файл формата zip?

Какой формат у вашего файла Excel: xls или xlsx?
Похожие вопросы