'Usage Dim instance As ImGearPDFDocument Dim stream As Stream instance.SaveCompressed(stream)
Parameters
- stream
- Stream object to save to. Only FileStream and MemoryStream are currently supported.
'Usage Dim instance As ImGearPDFDocument Dim stream As Stream instance.SaveCompressed(stream)
Exception | Description |
---|---|
ImageGear.Core.ImGearException | Thrown when stream is not writable. |
ImageGear .NET improves the overall size of saved PDF documents by reducing or removing data structures in the PDF document, specifically:
WARNING: Re-compressing Images with JBIG2 will invalidate PDF/X compliant documents.
WARNING: Removing embedded Standard Type 1 Fonts will invalidate PDF/X compliant documents.
WARNING: Removing embedded Standard Type 1 Fonts will invalidate PDF/A compliant documents when visible text is affected.
File size improvements will vary with each PDF file. In some cases, file size reduction is dramatic. Re-saving an optimized PDF file is not expected to further reduce its size. Less frequently, PDF file size may increase due to metadata that is always written when PDF documents are saved. Unmodified PDF files that cannot be further reduced are returned unaltered.
using System; using System.IO; using System.Text; using ImageGear.Core; using ImageGear.Formats; using ImageGear.Windows.Forms; using ImageGear.Formats.PDF; public Stream SaveCompressedPDFtoStream(String inputFileName) { // Load PDF document. ImGearPDFDocument pdfDocument = null; using (Stream fileStream = new FileStream(inputFileName, FileMode.Open, FileAccess.Read, FileShare.Read)) { pdfDocument = (ImGearPDFDocument)ImGearFileFormats.LoadDocument(fileStream); } // Save compressed PDF document to stream. Stream stream = new MemoryStream(); pdfDocument.SaveCompressed(stream); return stream; }
Imports System Imports System.IO Imports System.Text Imports ImageGear.Core Imports ImageGear.Formats Imports ImageGear.Formats.PDF Public Function SaveCompressedPDFtoStream(inputFileName As String) As Stream ' Load PDF document. Dim pdfDocument As ImGearPDFDocument Using fileStream As New FileStream(inputFileName, FileMode.Open, FileAccess.Read, FileShare.Read) pdfDocument = DirectCast(ImGearFileFormats.LoadDocument(fileStream), ImGearPDFDocument) End Using ' Save compressed PDF document to stream. Dim stream As Stream = New MemoryStream() pdfDocument.SaveCompressed(stream) Return stream End Function