Some test text!


Get started

Download PDFTron SDKIntegrate with NuGetIntegrate manuallyRun samplesAdd license keyQuick start - view a documentUpdate to latest version




Java binding (Android)Objective-C binding (iOS)Code sharing

Document Viewer (Android)


Document Viewer (iOS)

Show a document in a ViewControllerShow documents in a tabbed ViewController

Document Viewer components

PDFViewCtrl (Android)PDFViewCtrl (iOS)ReflowAnnotation toolbarAnnotation style editorPage sliderAnnotation listDocument outlineUser bookmark listList containerThumbnail browserAdd pages dialogRotate pages dialogView mode dialogCrop pages dialog

Annotation and collaboration

OverviewToolManager setupDisable annotation creation/editingOverride annotation handling

Advanced customization

Add a custom view to a pageCreate a custom toolPage coloring modePage fit modePage layout modeRealtime collaboration


Convert documents to PDFConvert HTML to PDF


Inline text search

Advanced topics

Document savingDocument locking


System RequirementsPDFTron full vs. standardBuild split APKsLocalizationIcon cheat sheet

PDF Processing API

What is PDFNet?Opening a documentSerializing (saving) a documentWorking with pagesWorking with Page ContentWorking with BookmarksWorking with Interactive Forms (AcroForms)PDF SecurityLow-level PDF APIError handling
Document savingkeyboard_arrow_down

Document saving

In this document
chevron_rightSaving by path
chevron_rightSaving modes
chevron_rightSave with remove unused objects
chevron_rightSave incrementally
chevron_rightSave in linearized format

Use PDFNet saving APIs from PDFDoc class to save PDF documents on local storage.

linkSaving by path

To save a PDF document to path use:

pdfdoc.Save(filepath, pdftron.SDF.SDFDoc.SaveOptions...);

For example, to save for optimized file streaming, use:

pdfdoc.Save(filepath, pdftron.SDF.SDFDoc.SaveOptions.e_linearized);

linkSaving modes

There are a few ways to save a PDF document on permanent storage such as save with remove unused objects, save incrementally, save in linearized format, etc.

linkSave with remove unused objects SaveOptions.e_remove_unused

This mode saves disk storage space by rearranging the PDF document and removing unused objects. As a result, the output file can be significantly smaller. However, the saving process itself may take longer compared to incremental mode.

linkSave incrementally SaveOptions.e_incremental

Use the incremental mode if you are particularly concerned about the time it takes to save the file. If you use this mode, any changes to the document, even the deletion of annotations, will be appended to the end of the PDF file. Note that it is not possible to incrementally save the document if the underlying file has an XRef table that had to be repaired when the file was opened (see

linkSave in linearized format SaveOptions.e_linearized

This mode is to be preferentially used in file streaming situations, such as when you want to upload a PDF document. It will rearrange the PDF document and remove unused objects. However, the saving process itself may take longer compared to other modes.