Pdftools SDK
Loading...
Searching...
No Matches
PdfTools_PdfToolsOptimization.h
Go to the documentation of this file.
1/******************************************************************************
2 *
3 * File: PdfTools_PdfToolsOptimization.h
4 *
5 * Description: Sub Header file for Pdftools SDK
6 *
7 * Author: PDF Tools AG
8 *
9 * Copyright: Copyright (C) 2023 - 2024 PDF Tools AG, Switzerland
10 * All rights reserved.
11 *
12 *****************************************************************************/
13
14#ifndef PDFTOOLS_PDFTOOLSOPTIMIZATION_H__
15#define PDFTOOLS_PDFTOOLSOPTIMIZATION_H__
16
17#ifndef PDFTOOLS_CALL
18#if defined(WIN32)
19#define PDFTOOLS_CALL __stdcall
20#else
21#define PDFTOOLS_CALL
22#endif
23#endif
24
25#include "PdfTools_Types.h"
27
28#ifdef __cplusplus
29extern "C"
30{
31#endif
32
33#ifdef _UNICODE
34#else
35#endif
36
37/******************************************************************************
38 * ImageRecompressionOptions
39 *****************************************************************************/
77 TPdfToolsOptimization_ImageRecompressionOptions* pImageRecompressionOptions);
114 TPdfToolsOptimization_ImageRecompressionOptions* pImageRecompressionOptions,
147 TPdfToolsOptimization_ImageRecompressionOptions* pImageRecompressionOptions);
179 TPdfToolsOptimization_ImageRecompressionOptions* pImageRecompressionOptions, double dCompressionQuality);
180
181/******************************************************************************
182 * FontOptions
183 *****************************************************************************/
323 TPdfToolsOptimization_FontOptions* pFontOptions, BOOL bRemoveStandardFonts);
324
325/******************************************************************************
326 * RemovalOptions
327 *****************************************************************************/
363 TPdfToolsOptimization_RemovalOptions* pRemovalOptions, BOOL bRemoveAlternateImages);
399 TPdfToolsOptimization_RemovalOptions* pRemovalOptions, BOOL bRemoveArticleThreads);
443 TPdfToolsOptimization_RemovalOptions* pRemovalOptions, BOOL bRemoveMetadata);
489 TPdfToolsOptimization_RemovalOptions* pRemovalOptions, BOOL bRemoveOutputIntents);
533 TPdfToolsOptimization_RemovalOptions* pRemovalOptions, BOOL bRemovePieceInfo);
583 TPdfToolsOptimization_RemovalOptions* pRemovalOptions, BOOL bRemoveStructureTree);
619 TPdfToolsOptimization_RemovalOptions* pRemovalOptions, BOOL bRemoveThumbnails);
654 TPdfToolsOptimization_RemovalOptions* pRemovalOptions);
689 TPdfToolsOptimization_RemovalStrategy iRemoveSignatureAppearances);
832
833/******************************************************************************
834 * Optimizer
835 *****************************************************************************/
846
887 TPdfToolsPdf_OutputOptions* pOutOptions);
888
889#ifdef __cplusplus
890}
891#endif
892
893#endif /* PDFTOOLS_PDFTOOLSOPTIMIZATION_H__ */
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_SetLinks(TPdfToolsOptimization_RemovalOptions *pRemovalOptions, TPdfToolsOptimization_ConversionStrategy iLinks)
The conversion strategy for links Default: ePdfToolsOptimization_ConversionStrategy_Copy in all profi...
PDFTOOLS_EXPORT TPdfToolsOptimization_CompressionAlgorithmSelection PDFTOOLS_CALL PdfToolsOptimization_ImageRecompressionOptions_GetAlgorithmSelection(TPdfToolsOptimization_ImageRecompressionOptions *pImageRecompressionOptions)
The strategy for image recompression.
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_GetRemovePieceInfo(TPdfToolsOptimization_RemovalOptions *pRemovalOptions)
Whether to remove the piece-info dictionary (private PDF processor data)
PDFTOOLS_EXPORT TPdfToolsOptimization_ConversionStrategy PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_GetLinks(TPdfToolsOptimization_RemovalOptions *pRemovalOptions)
The conversion strategy for links Default: ePdfToolsOptimization_ConversionStrategy_Copy in all profi...
PDFTOOLS_EXPORT double PDFTOOLS_CALL PdfToolsOptimization_ImageRecompressionOptions_GetCompressionQuality(TPdfToolsOptimization_ImageRecompressionOptions *pImageRecompressionOptions)
The compression quality for lossy image compression algorithms.
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_GetRemoveMetadata(TPdfToolsOptimization_RemovalOptions *pRemovalOptions)
Whether to remove document's XMP metadata Default:
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_SetRemoveMetadata(TPdfToolsOptimization_RemovalOptions *pRemovalOptions, BOOL bRemoveMetadata)
Whether to remove document's XMP metadata Default:
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_SetAnnotations(TPdfToolsOptimization_RemovalOptions *pRemovalOptions, TPdfToolsOptimization_ConversionStrategy iAnnotations)
The conversion strategy for annotations.
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_ImageRecompressionOptions_SetAlgorithmSelection(TPdfToolsOptimization_ImageRecompressionOptions *pImageRecompressionOptions, TPdfToolsOptimization_CompressionAlgorithmSelection iAlgorithmSelection)
The strategy for image recompression.
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_GetRemoveStructureTree(TPdfToolsOptimization_RemovalOptions *pRemovalOptions)
Whether to remove the data describing the logical structure of a PDF.
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_FontOptions_GetMerge(TPdfToolsOptimization_FontOptions *pFontOptions)
Whether to merge fonts and font programs.
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_FontOptions_SetRemoveStandardFonts(TPdfToolsOptimization_FontOptions *pFontOptions, BOOL bRemoveStandardFonts)
Whether to remove standard fonts.
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_ImageRecompressionOptions_SetCompressionQuality(TPdfToolsOptimization_ImageRecompressionOptions *pImageRecompressionOptions, double dCompressionQuality)
The compression quality for lossy image compression algorithms.
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_GetRemoveAlternateImages(TPdfToolsOptimization_RemovalOptions *pRemovalOptions)
Whether to remove additional or alternative versions of images Default: FALSE except in the profile T...
PDFTOOLS_EXPORT TPdfToolsOptimization_RemovalStrategy PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_GetRemoveSignatureAppearances(TPdfToolsOptimization_RemovalOptions *pRemovalOptions)
Whether to remove or flatten signature appearances.
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_SetRemoveOutputIntents(TPdfToolsOptimization_RemovalOptions *pRemovalOptions, BOOL bRemoveOutputIntents)
Whether to remove all output intents.
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_SetRemoveArticleThreads(TPdfToolsOptimization_RemovalOptions *pRemovalOptions, BOOL bRemoveArticleThreads)
Whether to remove the sequential flows (threads) of articles Default: TRUE except in the profile TPdf...
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_GetRemoveThumbnails(TPdfToolsOptimization_RemovalOptions *pRemovalOptions)
Whether to remove thumbnail images which represent the PDF pages in miniature form Default: TRUE in a...
PDFTOOLS_EXPORT TPdfToolsPdf_Document *PDFTOOLS_CALL PdfToolsOptimization_Optimizer_OptimizeDocument(TPdfToolsOptimization_Optimizer *pOptimizer, TPdfToolsPdf_Document *pInDoc, const TPdfToolsSys_StreamDescriptor *pOutStreamDesc, TPdfToolsOptimizationProfiles_Profile *pProfile, TPdfToolsPdf_OutputOptions *pOutOptions)
Optimize the PDF document.
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_FontOptions_SetMerge(TPdfToolsOptimization_FontOptions *pFontOptions, BOOL bMerge)
Whether to merge fonts and font programs.
PDFTOOLS_EXPORT TPdfToolsOptimization_ConversionStrategy PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_GetAnnotations(TPdfToolsOptimization_RemovalOptions *pRemovalOptions)
The conversion strategy for annotations.
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_SetRemoveThumbnails(TPdfToolsOptimization_RemovalOptions *pRemovalOptions, BOOL bRemoveThumbnails)
Whether to remove thumbnail images which represent the PDF pages in miniature form Default: TRUE in a...
#define PDFTOOLS_CALL
Definition PdfTools_PdfToolsOptimization.h:21
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_SetFormFields(TPdfToolsOptimization_RemovalOptions *pRemovalOptions, TPdfToolsOptimization_ConversionStrategy iFormFields)
The conversion strategy for interactive forms Default: ePdfToolsOptimization_ConversionStrategy_Copy ...
PDFTOOLS_EXPORT TPdfToolsOptimization_ConversionStrategy PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_GetFormFields(TPdfToolsOptimization_RemovalOptions *pRemovalOptions)
The conversion strategy for interactive forms Default: ePdfToolsOptimization_ConversionStrategy_Copy ...
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_GetRemoveArticleThreads(TPdfToolsOptimization_RemovalOptions *pRemovalOptions)
Whether to remove the sequential flows (threads) of articles Default: TRUE except in the profile TPdf...
PDFTOOLS_EXPORT TPdfToolsOptimization_Optimizer *PDFTOOLS_CALL PdfToolsOptimization_Optimizer_New(void)
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_SetRemoveAlternateImages(TPdfToolsOptimization_RemovalOptions *pRemovalOptions, BOOL bRemoveAlternateImages)
Whether to remove additional or alternative versions of images Default: FALSE except in the profile T...
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_SetRemoveStructureTree(TPdfToolsOptimization_RemovalOptions *pRemovalOptions, BOOL bRemoveStructureTree)
Whether to remove the data describing the logical structure of a PDF.
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_GetRemoveOutputIntents(TPdfToolsOptimization_RemovalOptions *pRemovalOptions)
Whether to remove all output intents.
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_SetRemovePieceInfo(TPdfToolsOptimization_RemovalOptions *pRemovalOptions, BOOL bRemovePieceInfo)
Whether to remove the piece-info dictionary (private PDF processor data)
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_FontOptions_GetRemoveStandardFonts(TPdfToolsOptimization_FontOptions *pFontOptions)
Whether to remove standard fonts.
PDFTOOLS_EXPORT BOOL PDFTOOLS_CALL PdfToolsOptimization_RemovalOptions_SetRemoveSignatureAppearances(TPdfToolsOptimization_RemovalOptions *pRemovalOptions, TPdfToolsOptimization_RemovalStrategy iRemoveSignatureAppearances)
Whether to remove or flatten signature appearances.
#define PDFTOOLS_EXPORT
Definition PdfTools_Platform.h:138
struct TPdfToolsOptimization_Optimizer TPdfToolsOptimization_Optimizer
The class to optimize PDF documents.
Definition PdfTools_Types.h:2368
TPdfToolsOptimization_ConversionStrategy
The conversion strategy for PDF objects.
Definition PdfTools_Types.h:339
struct TPdfToolsPdf_OutputOptions TPdfToolsPdf_OutputOptions
The parameters for document-level features of output PDFs Output options are used in many operations ...
Definition PdfTools_Types.h:2217
struct TPdfToolsOptimization_RemovalOptions TPdfToolsOptimization_RemovalOptions
The parameters defining the optional data to remove or flatten.
Definition PdfTools_Types.h:2364
struct TPdfToolsOptimization_ImageRecompressionOptions TPdfToolsOptimization_ImageRecompressionOptions
The parameters for image recompression.
Definition PdfTools_Types.h:2344
TPdfToolsOptimization_CompressionAlgorithmSelection
The strategy for recompressing images The strategy expresses the broad goal when recompressing images...
Definition PdfTools_Types.h:377
struct TPdfToolsOptimizationProfiles_Profile TPdfToolsOptimizationProfiles_Profile
The base class for PDF optimization profiles The profile defines the optimization parameters suitable...
Definition PdfTools_Types.h:2375
struct TPdfToolsOptimization_FontOptions TPdfToolsOptimization_FontOptions
The parameters for font optimization.
Definition PdfTools_Types.h:2348
TPdfToolsOptimization_RemovalStrategy
The removal strategy for PDF objects.
Definition PdfTools_Types.h:357
#define BOOL
Definition PdfTools_Types.h:18
struct TPdfToolsPdf_Document TPdfToolsPdf_Document
The PDF document PDF documents are either opened using PdfToolsPdf_Document_Open or the result of an ...
Definition PdfTools_Types.h:2224
Structure that groups a set of callbacks that model streams.
Definition PdfTools_PdfToolsSys.h:44