Конвертиране на документ в PDF

Възможността за лесно и надеждно конвертиране на документи от един формат в друг е ключова характеристика на Aspose.Words. Един от най-популярните формати за конвертиране е PDF гол формат, който запазва първоначалния вид на документ по време на представянето му на различни платформи. Терминът “намаляване” се използва в Aspose.Words да опише процеса на преобразуване на документ във формат на файл, който е въплътен или има концепцията за страници.

Конвертиране на документ с думи в PDF

Преобразуването от Word на PDF е доста сложен процес, който изисква няколко етапа на изчисление. Aspose.Words монтаж на двигателя имитира начина, по който Microsoft WordPDF документи изглежда възможно най-близо до това, което можете да видите Microsoft Word.

С Aspose.Words Можете програмно да конвертирате документ от Word формати, като DOC или DOCX, в PDF без да използвате Microsoft Офис. Тази статия обяснява как да се извърши това преобразуване.

Конвертиране на DOC или DOCX в PDF

Конвертиране от формата на DOC или DOCX документ във формат PDF в Aspose.Words е много лесно и може да се постигне само с два реда код, който:

  1. Зареждане на вашия документ в Document обект с помощта на един от неговите конструктори, като се посочва името на документа с неговото разширение формат.
  2. Призовете един от Document.save методи за Document обект и зададете желания формат на изхода като PDF чрез въвеждане на име на файл с разширението PDF.

Следният пример за код показва как да конвертирате документ от DOCX в PDF с помощта на save метод:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET.git.
doc = aw.Document(MY_DIR + "Document.docx")
doc.save(ARTIFACTS_DIR + "BaseConversions.docx_to_pdf.pdf")
view raw docx-to-pdf.py hosted with ❤ by GitHub

Можете да изтеглите шаблонния файл на този пример от Aspose.Words GitHub.

Конвертиране към различни PDF Стандарти

Aspose.Words осигурява PdfCompliace изброяване в подкрепа на превръщането на DOC или DOCX в различни PDF форматови стандарти (като PDF 1.7, PDF 1.5 и др.).

Следният пример за код показва как да се превърне документ в PDF 1.7 използване PdfSaveOptions при спазване на PDF17:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET.git.
doc = aw.Document(MY_DIR + "Rendering.docx")
save_options = aw.saving.PdfSaveOptions()
save_options.compliance = aw.saving.PdfCompliance.PDF17
doc.save(ARTIFACTS_DIR + "WorkingWithPdfSaveOptions.conversion_to_pdf_17.pdf", save_options)

Конвертиране на изображения в PDF

Преобразуването в PDF не е ограничено от Microsoft Word формат на документите. Формат, поддържан от Aspose.Words, включително програмно създаден, може да бъде преобразуван в PDF. Например, можем да конвертираме изображения на една страница, като JPEG, PNG, BMP, EMF или WMF, както и изображения на няколко страници, като TIFF и GIF, в PDF.

Следният пример за код показва как да конвертирате JPEG и TIFF изображения в PDF:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET.git.
self.convert_image_to_pdf(IMAGES_DIR + "Logo.jpg",
ARTIFACTS_DIR + "BaseConversions.JpgToPdf.pdf")
self.convert_image_to_pdf(IMAGES_DIR + "Transparent background logo.png",
ARTIFACTS_DIR + "BaseConversions.PngToPdf.pdf")
self.convert_image_to_pdf(IMAGES_DIR + "Windows MetaFile.wmf",
ARTIFACTS_DIR + "BaseConversions.WmfToPdf.pdf")
self.convert_image_to_pdf(IMAGES_DIR + "Tagged Image File Format.tiff",
ARTIFACTS_DIR + "BaseConversions.TiffToPdf.pdf")
self.convert_image_to_pdf(IMAGES_DIR + "Graphics Interchange Format.gif",
ARTIFACTS_DIR + "BaseConversions.GifToPdf.pdf")
view raw image-to-pdf.py hosted with ❤ by GitHub
# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET.git.
@staticmethod
def convert_image_to_pdf(input_file_name: str, output_file_name: str):
"""Converts an image to PDF using Aspose.Words for .NET.
:param input_file_name: File name of input image file.
:param output_file_name: Output PDF file name.
"""
print("Converting " + input_file_name + " to PDF...")
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
# Read the image from file
with drawing.Image.from_file(input_file_name) as image:
# Find which dimension the frames in this image represent. For example
# the frames of a BMP or TIFF are "page dimension" whereas frames of a GIF image are "time dimension".
dimension = drawing.imaging.FrameDimension(image.frame_dimensions_list[0])
frames_count = image.get_frame_count(dimension)
for frame_idx in range(frames_count):
# Insert a section break before each new page, in case of a multi-frame TIFF.
if frame_idx != 0:
builder.insert_break(aw.BreakType.SECTION_BREAK_NEW_PAGE)
image.select_active_frame(dimension, frame_idx)
frame_stream = io.BytesIO()
image.save(frame_stream, drawing.imaging.ImageFormat.png)
# We want the size of the page to be the same as the size of the image.
# Convert pixels to points to size the page to the actual image size.
page_setup = builder.page_setup
page_setup.page_width = aw.ConvertUtil.pixel_to_point(image.width, image.horizontal_resolution)
page_setup.page_height = aw.ConvertUtil.pixel_to_point(image.height, image.vertical_resolution)
# Insert the image into the document and position it at the top left corner of the page.
builder.insert_image(
frame_stream,
aw.drawing.RelativeHorizontalPosition.PAGE,
0,
aw.drawing.RelativeVerticalPosition.PAGE,
0,
page_setup.page_width,
page_setup.page_height,
aw.drawing.WrapType.NONE)
doc.save(output_file_name)

За да се получи този код, трябва да се добавят препратки към Aspose.Words както и aspose.pydrawing за твоя проект.

Намаляване на PDF Размер на изхода

Когато записвате в PDF, можете да посочите дали искате да оптимизирате изхода. За да направите това, трябва да настроите optimize_output флаг към true, и тогава излишните гнездища и празни платна ще бъдат премахнати, съседе. glyphS със същото форматиране ще се съедини.

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET.git.
doc = aw.Document(MY_DIR + "Rendering.docx")
save_options = aw.saving.PdfSaveOptions()
save_options.optimize_output = True
doc.save(ARTIFACTS_DIR + "PdfSaveOptions.OptimizeOutput.pdf", save_options)

Намаляване на PDF Размер на изхода

Когато записвате в PDF, можете да посочите дали искате да оптимизирате изхода. За да направите това, трябва да настроите optimize_output флаг към true, и тогава излишните гнездища и празни платна ще бъдат премахнати, съседе. glyphS със същото форматиране ще се съедини.

Вижте също