Управление внешними ресурсами с помощью Aspose.Cells для .NET
Введение
В современном цифровом ландшафте преобразование таблиц Excel в документы PDF является распространенной и важной задачей. Независимо от того, готовите ли вы отчеты, финансовые данные или презентационные материалы, обеспечение того, чтобы ваши PDF-файлы отражали предполагаемый формат, имеет решающее значение. Aspose.Cells для .NET предоставляет мощную библиотеку, которая позволяет вам подробно контролировать этот процесс преобразования, особенно при работе с внешними ресурсами, такими как изображения. В этом руководстве мы рассмотрим, как эффективно управлять внешними ресурсами во время процесса преобразования Excel в PDF с помощью Aspose.Cells. Давайте погрузимся в это!
Предпосылки
Прежде чем начать, убедитесь, что у вас готово следующее:
- Visual Studio или любая совместимая с .NET IDE: это будет ваша среда разработки.
- Aspose.Cells для .NET: если вы еще не установили его, посетитеЗагрузки Aspose страницу, чтобы получить последнюю версию.
- Базовые знания C#: Знакомство с C# будет полезным. Если вам нужны разъяснения по каким-либо концепциям, не стесняйтесь искать их.
- Пример файла Excel: подготовьте файл Excel, например «samplePdfSaveOptions_StreamProvider.xlsx», содержащий внешние ресурсы, которые вы хотите преобразовать.
- Файл изображения для тестирования: используйте файл изображения, например «newPdfSaveOptions_StreamProvider.png», в качестве внешнего ресурса во время преобразования.
Импорт необходимых пакетов
Для начала вам нужно импортировать требуемые пространства имен из библиотеки Aspose.Cells. Добавьте следующие директивы using в начало вашего файла C#:
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-----");
// Загрузить изображение в поток памяти
byte[] bts = File.ReadAllBytes(Path.Combine(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");
TheWorkbook
класс из Aspose.Cells представляет ваш файл Excel, который может включать различные внешние ресурсы, такие как изображения.
Шаг 4: Задайте параметры сохранения PDF-файла
Перед сохранением книги в формате PDF укажите желаемые параметры сохранения.
// Укажите параметры сохранения PDF-файла — поставщик потоковой передачи
PdfSaveOptions opts = new PdfSaveOptions
{
OnePagePerSheet = true // Сохраняйте каждый лист на новой странице.
};
Это создает экземплярPdfSaveOptions
, что позволяет вам настраивать формат PDF.OnePagePerSheet
опция гарантирует, что каждый лист Excel будет отображаться на отдельной странице в окончательном PDF-файле.
Шаг 5: Назначьте поставщика потокового вещания
Подключите свойWorkbook
пример сMyStreamProvider
класс, который вы создали ранее.
wb.Settings.StreamProvider = new 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.
Как получить временную лицензию для Aspose.Cells?
Вы можете подать заявление на получение временной лицензииздесь.