Конвертиране на документ в PDF
Възможността за лесно и надеждно конвертиране на документи от един формат в друг е ключова характеристика на Aspose.Words. Един от най-популярните формати за конвертиране е PDF гол формат, който запазва първоначалния вид на документ по време на представянето му на различни платформи. Терминът “намаляване” се използва в Aspose.Words да опише процеса на преобразуване на документ във формат на файл, който е въплътен или има концепцията за страници.
Конвертиране на документ с думи в PDF
Преобразуването от Word на PDF е доста сложен процес, който изисква няколко етапа на изчисление. Aspose.Words монтаж на двигателя имитира начина, по който Microsoft WordPDF документи изглежда възможно най-близо до това, което можете да видите Microsoft Word.
С Aspose.Words Можете програмно да конвертирате документ от Word формати, като DOC или DOCX, в PDF без да използвате Microsoft Офис. Тази статия обяснява как да се извърши това преобразуване.
Конвертиране на DOCX или DOC в PDF
Конвертиране от формата на DOC или DOCX документ във формат PDF в Aspose.Words е много лесно и може да се постигне само с два реда код, който:
- Зареждане на вашия документ в Document обект с помощта на един от неговите конструктори, като се посочва името на документа с неговото разширение формат.
- Призовете един от 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-.NET.git. | |
Document doc = new Document(MyDir + "Document.docx"); | |
doc.Save(ArtifactsDir + "BaseConversions.DocxToPdf.pdf"); |
Можете да изтеглите шаблонния файл на този пример от Aspose.Words GitHub.
Понякога е необходимо да се определят допълнителни опции, които могат да повлияят на резултата от запазване на документ като PDF. Тези опции могат да бъдат посочени чрез използването на PdfSaveOptions клас, съдържащ свойства, които определят как ще бъде показан изходът от PDF.
Имайте предвид, че със същата техника можете да конвертирате всеки документ във формат PDF.
Конвертиране към различен PDF Стандарти
Aspose.Words осигурява PdfComplaceизброяване в подкрепа на превръщането на 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-.NET.git. | |
Document doc = new Document(MyDir + "Rendering.docx"); | |
PdfSaveOptions saveOptions = new PdfSaveOptions { Compliance = PdfCompliance.Pdf17 }; | |
doc.Save(ArtifactsDir + "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-.NET.git. | |
ConvertImageToPdf(ImagesDir + "Logo.jpg", ArtifactsDir + "BaseConversions.JpgToPdf.pdf"); | |
ConvertImageToPdf(ImagesDir + "Transparent background logo.png", ArtifactsDir + "BaseConversions.PngToPdf.pdf"); | |
ConvertImageToPdf(ImagesDir + "Windows MetaFile.wmf", ArtifactsDir + "BaseConversions.WmfToPdf.pdf"); | |
ConvertImageToPdf(ImagesDir + "Tagged Image File Format.tiff", ArtifactsDir + "BaseConversions.TiffToPdf.pdf"); | |
ConvertImageToPdf(ImagesDir + "Graphics Interchange Format.gif", ArtifactsDir + "BaseConversions.GifToPdf.pdf"); |
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET.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> | |
public void ConvertImageToPdf(string inputFileName, string outputFileName) | |
{ | |
Console.WriteLine("Converting " + inputFileName + " to PDF ...."); | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
// Read the image from file, ensure it is disposed. | |
using (Image image = Image.FromFile(inputFileName)) | |
{ | |
// 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". | |
FrameDimension dimension = new FrameDimension(image.FrameDimensionsList[0]); | |
int framesCount = image.GetFrameCount(dimension); | |
for (int frameIdx = 0; frameIdx < framesCount; frameIdx++) | |
{ | |
// Insert a section break before each new page, in case of a multi-frame TIFF. | |
if (frameIdx != 0) | |
builder.InsertBreak(BreakType.SectionBreakNewPage); | |
image.SelectActiveFrame(dimension, frameIdx); | |
// 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. | |
PageSetup ps = builder.PageSetup; | |
ps.PageWidth = ConvertUtil.PixelToPoint(image.Width, image.HorizontalResolution); | |
ps.PageHeight = ConvertUtil.PixelToPoint(image.Height, image.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.PageWidth, | |
ps.PageHeight, | |
WrapType.None); | |
} | |
} | |
doc.Save(outputFileName); | |
} |
За да се получи този код, трябва да се добавят препратки към Aspose.Words както и System.Drawing
за твоя проект.
Намаляване на PDF Размер на изхода
Когато записвате в PDF, можете да посочите дали искате да оптимизирате изхода. За да направите това, трябва да настроите OptimizeOutput флаг към true, и тогава излишните гнездища и празни платна ще бъдат премахнати, съседе. glyphS със същото форматиране ще се съедини.
Следният пример за код показва как да оптимизирате изхода:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET.git. | |
Document doc = new Document(MyDir + "Rendering.docx"); | |
PdfSaveOptions saveOptions = new PdfSaveOptions { OptimizeOutput = true }; | |
doc.Save(ArtifactsDir + "WorkingWithPdfSaveOptions.OptimizeOutput.pdf", saveOptions); |
Вижте също
-
Статията. Внасяне за повече информация относно форматите на фиксираната страница и на дебита
-
Статията. Преобразуване във формат с фиксирана страница за повече информация на оформлението на страницата
-
Статията. Посочете настройките за прехвърляне при преобразуване в PDF за повече информация относно употребата на
PdfSaveOptions
клас -
Статията. Учете характеристики на преобразуване на PDF/A и PDF/UA описание на стандарта PDF и съответния стандарт ISO за поддръжка на PDF стандартите Aspose.Words
-
Статията. Кой PDF стандарт е по-добър за избор да определи кои PDF стандарти имат смисъл за кои случаи
-
Статията. Работа с PDF/A или PDF/UA описва изискванията за съдържанието на документа в PDF/A и PDF/UA формати, главно изискванията за структурата и шрифтовете
-
Статията. Предупреждение при достъп до PDF/A и PDF/UA описва изискванията за достъпност на съдържанието PDF/A и PDF/UA