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

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

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

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

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

Конвертиране на DOCX или DOC до 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-C.git.
auto doc = MakeObject<Document>(MyDir + u"Document.docx");
doc->Save(ArtifactsDir + u"BaseConversions.DocxToPdf.pdf");
view raw docx-to-pdf.h 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-C.git.
auto doc = MakeObject<Document>(MyDir + u"Rendering.docx");
auto saveOptions = MakeObject<PdfSaveOptions>();
saveOptions->set_Compliance(PdfCompliance::Pdf17);
doc->Save(ArtifactsDir + u"WorkingWithPdfSaveOptions.ConversionToPdf17.pdf", saveOptions);

Конвертиране на изображения в 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-C.git.
ConvertImageToPdf(ImagesDir + u"Logo.jpg", ArtifactsDir + u"BaseConversions.JpgToPdf.pdf");
ConvertImageToPdf(ImagesDir + u"Transparent background logo.png", ArtifactsDir + u"BaseConversions.PngToPdf.pdf");
ConvertImageToPdf(ImagesDir + u"Windows MetaFile.wmf", ArtifactsDir + u"BaseConversions.WmfToPdf.pdf");
ConvertImageToPdf(ImagesDir + u"Tagged Image File Format.tiff", ArtifactsDir + u"BaseConversions.TiffToPdf.pdf");
ConvertImageToPdf(ImagesDir + u"Graphics Interchange Format.gif", ArtifactsDir + u"BaseConversions.GifToPdf.pdf");
view raw image-to-pdf.h hosted with ❤ by GitHub
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C.git.
/// <summary>
/// Converts an image to PDF using Aspose.Words for .NET.
/// </summary>
/// <param name="inputFileName">File name of input image file.</param>
/// <param name="outputFileName">Output PDF file name.</param>
void ConvertImageToPdf(String inputFileName, String outputFileName)
{
std::cout << (String(u"Converting ") + inputFileName + u" to PDF ....") << std::endl;
auto doc = MakeObject<Document>();
auto builder = MakeObject<DocumentBuilder>(doc);
// Read the image from file, ensure it is disposed.
{
SharedPtr<System::Drawing::Image> image = System::Drawing::Image::FromFile(inputFileName);
// Insert a section break before each new page, in case of a multi-frame TIFF.
builder->InsertBreak(BreakType::SectionBreakNewPage);
// 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.
SharedPtr<PageSetup> ps = builder->get_PageSetup();
ps->set_PageWidth(ConvertUtil::PixelToPoint(image->get_Width(), image->get_HorizontalResolution()));
ps->set_PageHeight(ConvertUtil::PixelToPoint(image->get_Height(), image->get_VerticalResolution()));
// Insert the image into the document and position it at the top left corner of the page.
builder->InsertImage(image, RelativeHorizontalPosition::Page, 0, RelativeVerticalPosition::Page, 0, ps->get_PageWidth(), ps->get_PageHeight(), WrapType::None);
}
doc->Save(outputFileName);
}

За да работи този код, трябва да добавите препратки към Aspose.Words и System.Drawing към вашия проект.

Вижте Също