Управление внешними ресурсами в Excel в PDF в Aspose.Cells

Введение

В сегодняшнюю цифровую эпоху преобразование таблиц Excel в документы PDF является обычной задачей. Будь то подготовка отчетов, финансовых данных или презентационных материалов, вы хотите быть уверены, что ваши PDF-файлы выглядят именно так, как вы задумали. Aspose.Cells для .NET — это надежная библиотека, которая позволяет вам контролировать этот процесс преобразования вплоть до мельчайших деталей, особенно при работе с внешними ресурсами, такими как изображения, которые сопровождают ваши файлы Excel. В этом руководстве мы углубимся в то, как управлять внешними ресурсами во время процесса преобразования Excel в PDF с помощью Aspose.Cells. Итак, возьмите свой любимый напиток, и давайте начнем!

Предпосылки

Прежде чем мы перейдем к деталям, давайте убедимся, что у вас есть все необходимое для начала работы. Вот краткий контрольный список:

  1. Visual Studio или любая совместимая с .NET IDE: вам понадобится среда для написания и тестирования кода.
  2. Aspose.Cells для .NET: если вы еще не установили его, перейдите на страницуЗагрузки Aspose страницу и скачайте последнюю версию.
  3. Базовые знания C#: Знакомство с языком программирования C# будет полезным. Если вы не уверены в каких-либо концепциях, не стесняйтесь искать их.
  4. Образец файла Excel: Подготовьте файл Excel с любыми внешними ресурсами, которые вы хотите преобразовать. Вы можете использовать предоставленный образец файла “samplePdfSaveOptions_StreamProvider.xlsx”.
  5. Файл изображения для тестирования: он будет использоваться как внешний ресурс во время преобразования. Файл изображения “newPdfSaveOptions_StreamProvider.png” является хорошим заполнителем.

Импортные пакеты

Для начала вам нужно импортировать необходимые пространства имен из библиотеки Aspose.Cells. Это важно для доступа к ее функциональным возможностям. Обязательно добавьте следующие директивы using в начало файла:

using System.IO;
using System.Drawing;
using System.Drawing.Imaging;
using Aspose.Cells;
using Aspose.Cells.Drawing;
using Aspose.Cells.Rendering;
using System;

Эти пакеты предоставят все основные классы и методы, которые вам понадобятся для выполнения ваших задач.

Шаг 1: Создайте свой класс поставщика потока

Первым делом необходимо создать класс поставщика потока, который реализуетIStreamProvider интерфейс. Этот класс позволит вам контролировать загрузку внешних ресурсов.

class MyStreamProvider : IStreamProvider
{
    public void CloseStream(StreamProviderOptions options)
    {
        Debug.WriteLine("-----Close Stream-----");
    }
    public void InitStream(StreamProviderOptions options)
    {
        string sourceDir = "Your Document Directory";
        Debug.WriteLine("-----Init Stream-----");
        // Считайте новое изображение в потоке памяти и присвойте его свойству Stream.
        byte[] bts = File.ReadAllBytes(sourceDir + "newPdfSaveOptions_StreamProvider.png");
        MemoryStream ms = new MemoryStream(bts);
        options.Stream = ms;
    }
}

В этом классе:

  • CloseStream: Этот метод будет вызван при закрытии потока. Сейчас мы просто пишем отладочное сообщение для отслеживания.
  • InitStream: Здесь начинается магия. Здесь вы считываете внешнее изображение как массив байтов, преобразуете его в поток памяти и назначаете егоoptions.Stream свойство.

Шаг 2: Настройка исходных и выходных каталогов

Теперь, когда ваш потоковый провайдер готов, пришло время указать, где находится ваш файл Excel и куда вы хотите сохранить свой PDF-файл.

// Исходный каталог
string sourceDir = "Your Document Directory";
// Выходной каталог
string outputDir = "Your Document Directory";

Просто замените"Your Document Directory" с фактическим путем на вашем компьютере, где находятся ваши файлы. Сохранение организованности файлов — это ключ!

Шаг 3: Загрузите файл Excel

Далее вам нужно загрузить файл Excel, из которого вы хотите создать PDF-файл.

// Загрузить исходный файл Excel, содержащий внешние изображения
Workbook wb = new Workbook(sourceDir + "samplePdfSaveOptions_StreamProvider.xlsx");

Мы используемWorkbook класс из Aspose.Cells, который представляет ваш файл Excel. Файл может включать различные внешние ресурсы, такие как изображения, которыми вы хотите управлять во время преобразования.

Шаг 4: Задайте параметры сохранения PDF-файла

Прежде чем сохранить книгу в формате PDF, давайте укажем, как вы хотите ее сохранить. Вы можете настроить эти параметры в соответствии с вашими требованиями.

// Укажите параметры сохранения PDF-файла — поставщик потоковой передачи
PdfSaveOptions opts = new PdfSaveOptions();
opts.OnePagePerSheet = true; // Сохраняйте каждый лист на новой странице.

Здесь мы создаем новый экземплярPdfSaveOptions , который позволяет вам настроить формат вашего PDF-файла.OnePagePerSheetЭтот параметр удобен для обеспечения того, чтобы каждый лист Excel получил отдельную страницу в итоговом PDF-файле.

Шаг 5: Назначьте поставщика потокового вещания

Установив параметры PDF, вам необходимо указать Aspose использовать вашего поставщика потока для внешних ресурсов.

wb.Settings.StreamProvider = new MyStreamProvider();

Эта линия соединяет вашWorkbook пример сMyStreamProvider класс, который вы создали ранее. Это означает, что всякий раз, когда внешние ресурсы встречаются во время преобразования, ваш поставщик будет обрабатывать их, как указано.

Шаг 6: Сохраните рабочую книгу в формате PDF.

Когда все готово, пришло время сохранить книгу Excel в формате PDF.

// Сохранить книгу в формате PDF
wb.Save(outputDir + "outputPdfSaveOptions_StreamProvider.pdf", opts);

Позвонив по номеруSave Применяя метод к объекту рабочей книги и передавая ему выходной каталог вместе с параметрами PDF, вы преобразуете файл Excel в прекрасно отформатированный PDF-файл.

Шаг 7: Подтвердите успешное выполнение

В заключение всегда приятно убедиться, что ваш процесс прошел успешно!

Console.WriteLine("ControlLoadingOfExternalResourcesInExcelToPDF executed successfully.\r\n");

Печать сообщения об успешном выполнении на консоли помогает вам быть в курсе статуса вашей операции. Это хорошая привычка — включать эти небольшие подтверждения в свой код.

Заключение

Вот и все! Выполнив эти простые шаги, вы сможете профессионально контролировать обработку внешних ресурсов во время преобразования Excel в PDF с помощью Aspose.Cells. Это означает, что ваши документы теперь могут точно включать изображения и другие внешние элементы, гарантируя каждый раз отточенный конечный продукт.

Часто задаваемые вопросы

Что такое Aspose.Cells?

Aspose.Cells — это мощная библиотека для разработчиков .NET, которая позволяет создавать, обрабатывать, конвертировать и отображать файлы Excel в различных форматах.

Как загрузить Aspose.Cells?

Вы можете загрузить последнюю версию Aspose.Cells с сайтаСсылка для скачивания.

Могу ли я попробовать Aspose.Cells бесплатно?

Да! Вы можете получить бесплатную пробную версию, посетивБесплатная пробная версия страницы.

Где я могу найти поддержку Aspose.Cells?

По любым вопросам, связанным со службой поддержки, вы можете посетитьФорум поддержки Aspose.

Как получить временную лицензию для Aspose.Cells?

Вы можете подать заявление на получение временной лицензииздесь.