Konversikan Dokumen ke PDF

Kemampuan untuk mengkonversi dokumen dengan mudah dan andal dari satu format ke format lainnya adalah fitur utama Aspose.Words. Salah satu format konversi yang paling populer adalah PDF – format tata letak tetap, yang mempertahankan tampilan asli dokumen selama rendering di berbagai platform. Istilah “render” digunakan di Aspose.Words untuk menggambarkan proses mengubah dokumen menjadi format file yang diberi halaman atau memiliki konsep halaman.

Konversikan Dokumen Word ke PDF

Konversi dari Word ke PDF merupakan proses yang agak rumit yang memerlukan beberapa tahapan perhitungan. Mesin tata letak Aspose.Words meniru cara kerja mesin tata letak halaman Microsoft Word, membuat dokumen keluaran PDF terlihat sedekat mungkin dengan apa yang Anda lihat di Microsoft Word.

Dengan Aspose.Words Anda dapat mengonversi dokumen secara terprogram dari format Word, seperti DOC atau DOCX, ke PDF tanpa menggunakan Microsoft Office. Artikel ini menjelaskan cara melakukan konversi ini.

Konversi DOC atau DOCX ke PDF

Mengonversi format dokumen DOC atau DOCX ke format PDF di Aspose.Words sangat mudah dan dapat dilakukan hanya dengan dua baris kode yaitu:

  1. Muat dokumen Anda ke dalam objek Document menggunakan salah satu konstruktornya dengan menentukan nama dokumen dengan ekstensi formatnya.
  2. Aktifkan salah satu metode Document.save pada objek Document dan tentukan format output yang diinginkan sebagai PDF dengan memasukkan nama file berekstensi “.PDF”.

Contoh kode berikut menunjukkan cara mengkonversi dokumen dari DOCX ke PDF menggunakan metode 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

Anda dapat mengunduh file template contoh ini dari Aspose.Words GitHub.

Konversikan ke Berbagai Standar PDF

Aspose.Words menyediakan enumerasi PdfCompliace untuk mendukung konversi DOC atau DOCX ke berbagai standar format PDF (seperti PDF 1.7, PDF 1.5, dll.).

Contoh kode berikut menunjukkan cara mengonversi dokumen ke PDF 1.7 menggunakan PdfSaveOptions dengan kepatuhan terhadap 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)

Konversi Gambar ke PDF

Mengonversi ke PDF tidak dibatasi oleh format dokumen Microsoft Word. Format apa pun yang didukung oleh Aspose.Words, termasuk yang dibuat secara terprogram, juga dapat dikonversi ke PDF. Misalnya, kita dapat mengonversi gambar satu halaman, seperti JPEG, PNG, BMP, EMF, atau WMF, serta gambar multi halaman, seperti TIFF dan GIF, ke PDF.

Contoh kode berikut menunjukkan cara mengonversi gambar JPEG dan TIFF ke 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)

Agar kode ini berfungsi, Anda perlu menambahkan referensi ke Aspose.Words dan aspose.pydrawing ke proyek Anda.

Kurangi Ukuran Keluaran PDF

Saat menyimpan ke PDF, Anda dapat menentukan apakah Anda ingin mengoptimalkan hasilnya. Untuk melakukan ini, Anda perlu menyetel tanda optimize_output ke true, lalu kanvas bertumpuk dan kanvas kosong yang berlebihan akan dihapus, glyph tetangga dengan format yang sama akan digabungkan.

# 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)

Kurangi Ukuran Keluaran PDF

Saat menyimpan ke PDF, Anda dapat menentukan apakah Anda ingin mengoptimalkan hasilnya. Untuk melakukan ini, Anda perlu menyetel tanda optimize_output ke true, lalu kanvas bertumpuk dan kanvas kosong yang berlebihan akan dihapus, glyph tetangga dengan format yang sama akan digabungkan.

Lihat juga