Pdf

Преобразование книги Excel в PDF

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

Aspose.Cells для Python via .NET поддерживает преобразование файлов Excel в PDF и поддерживает высокую визуальную точность при преобразовании.

Прямое преобразование

Aspose.Cells для Python via .NET поддерживает конвертацию из электронных таблиц в PDF независимо от другого программного обеспечения. Просто сохраните файл Excel в PDF с помощью метода save класса Workbook. Метод save обеспечивает член перечисления SaveFormat.PDF, который конвертирует исходные файлы Excel в формат PDF.

Следуйте нижеприведенным шагам, чтобы непосредственно преобразовать электронные таблицы Excel в формат PDF:

  1. Создайте объект класса Workbook, вызвав его пустой конструктор.
  2. Вы можете открыть/загрузить существующий файл шаблона, или пропустить этот шаг, если создаете книгу из нуля.
  3. Выполните любую работу (введение данных, применение форматирования, установка формул, вставка изображений или других рисунков и т. д.) в электронной таблице с использованием API Aspose.Cells для Python via .NET.
  4. Когда код таблицы завершен, вызовите метод save класса Workbook, чтобы сохранить таблицу.

Формат файла должен быть PDF, поэтому выберите PDF (предопределенное значение) из перечисления SaveFormat для создания конечного PDF-документа.

from aspose.cells import SaveFormat, Workbook
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# The path to the documents directory.
dataDir = RunExamples.GetDataDir(".")
# Instantiate the Workbook object
# Open an Excel file
workbook = Workbook(dataDir + "Book1.xls")
# Save the document in PDF format
workbook.save(dataDir + "output.pdf", SaveFormat.PDF)

Расширенное преобразование

Также можно использовать класс PdfSaveOptions для установки различных атрибутов конвертации. Установка различных свойств класса PdfSaveOptions дает вам контроль над параметрами печати, шрифтами, безопасностью и сжатием для выводного PDF. Самое важное свойство - PdfSaveOptions.compliance, которое позволяет сохранять файлы Excel в формате PDF/A.

Сохранение книги в формате PDF/A

Ниже приведен фрагмент кода, демонстрирующий использование класса PdfSaveOptions для сохранения файлов Excel в формате PDF/A.

from aspose.cells import PdfSaveOptions, Workbook
from aspose.cells.rendering import PdfCompliance
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# The path to the documents directory.
dataDir = RunExamples.GetDataDir(".")
# Instantiate new workbook
workbook = Workbook()
# Insert a value into the A1 cell in the first worksheet
workbook.worksheets[0].cells.get(0, 0).put_value("Testing PDF/A")
# Define PdfSaveOptions
pdfSaveOptions = PdfSaveOptions()
# Set the compliance type
pdfSaveOptions.compliance = PdfCompliance.PDF_A1B
# Save the file
workbook.save(dataDir + "output.pdf", pdfSaveOptions)

Установить время создания PDF

С помощью класса PdfSaveOptions вы можете получать или устанавливать время создания PDF. В следующем коде демонстрируется использование свойства PdfSaveOptions.created_time для установки времени создания файла PDF.

from aspose.cells import PdfSaveOptions, SaveFormat, Workbook
from datetime import datetime
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
dataDir = RunExamples.GetDataDir(".")
inputPath = dataDir + "Book1.xlsx"
# Load excel file containing charts
workbook = Workbook(inputPath)
# Create an instance of PdfSaveOptions and pass SaveFormat to the constructor
options = PdfSaveOptions(SaveFormat.PDF)
options.created_time = datetime.now()
# Save the workbook to PDF format while passing the object of PdfSaveOptions
workbook.save(dataDir + "output.pdf", options)

Установите опцию ContentCopyForAccessibility

С помощью класса PdfSaveOptions вы можете получать или устанавливать параметр PDF PdfSecurityOptions.accessibility_extract_content для контроля доступа к содержимому в созданном PDF.

from aspose.cells import PdfSaveOptions, SaveFormat, Workbook
from aspose.cells.rendering.pdfsecurity import PdfSecurityOptions
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# Source directory
sourceDir = RunExamples.Get_SourceDirectory()
# Output directory
outputDir = RunExamples.Get_OutputDirectory()
inputPath = sourceDir + "BookWithSomeData.xlsx"
# Load excel file containing some data
workbook = Workbook(inputPath)
# Create an instance of PdfSaveOptions and pass SaveFormat to the constructor
pdfSaveOpt = PdfSaveOptions(SaveFormat.PDF)
# Create an instance of PdfSecurityOptions
securityOptions = PdfSecurityOptions()
# Set AccessibilityExtractContent to true
securityOptions.accessibility_extract_content = False
# Set the securityoption in the PdfSaveOptions
pdfSaveOpt.security_options = securityOptions
# Save the workbook to PDF format while passing the object of PdfSaveOptions
workbook.save(outputDir + "outFile.pdf", pdfSaveOpt)

Экспорт пользовательских свойств в PDF

С помощью класса PdfSaveOptions можно экспортировать пользовательские свойства из исходной книги в формат PDF. Перечислитель PdfCustomPropertiesExport предназначен для указания способа экспорта свойств. Эти свойства можно увидеть в Adobe Acrobat Reader, нажав на файл, а затем на опцию свойств, как показано на следующем изображении. Файл шаблона “sourceWithCustProps.xlsx” можно загрузить здесь для тестирования, а файл PDF “outSourceWithCustProps” доступен здесь для анализа.

todo:image_alt_text

from aspose.cells import PdfSaveOptions, SaveFormat, Workbook
from aspose.cells.rendering import PdfCustomPropertiesExport
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# Load excel file containing custom properties
workbook = Workbook("sourceWithCustProps.xlsx")
# Create an instance of PdfSaveOptions and pass SaveFormat to the constructor
pdfSaveOptions = PdfSaveOptions(SaveFormat.PDF)
# Set CustomPropertiesExport property to PdfCustomPropertiesExport.Standard
pdfSaveOptions.custom_properties_export = PdfCustomPropertiesExport.STANDARD
# Save the workbook to PDF format while passing the object of PdfSaveOptions
workbook.save("outSourceWithCustProps.pdf", pdfSaveOptions)

Атрибуты преобразования

Мы работаем над улучшением функций преобразования с каждым новым выпуском. Преобразование Excel в PDF от Aspose.Cells все еще имеет несколько ограничений. Карта заполнения не поддерживается при преобразовании в формат PDF. Кроме того, некоторые объекты рисования не поддерживаются хорошо.

В таблице ниже перечислены все полностью или частично поддерживаемые функции при экспортировании в PDF с использованием Aspose.Cells для Python via .NET. Эта таблица не является окончательной и не содержит все атрибуты электронных таблиц, но идентифицирует те функции, которые не поддерживаются или поддерживаются частично при конверсии в PDF.

Элемент документа Атрибут Поддерживается Примечания
Выравнивание   Да  
Настройки фона   Да  
Граница Цвет Да  
Граница Стиль линии Да
Граница Толщина линии Да
Данные ячейки Да
Комментарии Да
Условное форматирование Да
Свойства документа Да
Объекты рисования Частично Тени и трехмерные эффекты для объектов рисования плохо поддерживаются; WordArt и SmartArt поддерживаются частично.
Шрифт Размер Да
Шрифт Цвет Да
Шрифт Стиль Да
Шрифт Подчеркивание Да
Шрифт Эффекты Да
Изображения Да
Гиперссылка Да
Диаграммы Частично Карта диаграмм не поддерживается.
Объединенные ячейки Да
Разрыв страницы Да
Настройка страницы Верхний/нижний колонтитул Да
Настройка страницы Поля Да
Настройка страницы Ориентация страницы Да
Настройка страницы Размер страницы Да
Настройка страницы Область печати Да
Настройка страницы Печатные заголовки Да
Настройка страницы Масштабирование Да
Высота строки/Ширина столбца Да
Язык справа налево (RTL) Да

Продвинутые темы