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 * Notice: By downloading and using this artifact, you accept PDF Tools AG's
13 * [license agreement](https://www.pdf-tools.com/license-agreement/),
14 * [privacy policy](https://www.pdf-tools.com/privacy-policy/),
15 * and allow PDF Tools AG to track your usage data.
16 *
17 *****************************************************************************/
18
19#ifndef PDFTOOLS_PDFTOOLSOPTIMIZATION_H__
20#define PDFTOOLS_PDFTOOLSOPTIMIZATION_H__
21
22#ifndef PDFTOOLS_CALL
23#if defined(WIN32)
24#define PDFTOOLS_CALL __stdcall
25#else
26#define PDFTOOLS_CALL
27#endif
28#endif
29
30#include "PdfTools_Types.h"
32
33#ifdef __cplusplus
34extern "C"
35{
36#endif
37
38#ifdef _UNICODE
39#else
40#endif
41
42/******************************************************************************
43 * ImageRecompressionOptions
44 *****************************************************************************/
83 TPdfToolsOptimization_ImageRecompressionOptions* pImageRecompressionOptions);
122 TPdfToolsOptimization_ImageRecompressionOptions* pImageRecompressionOptions,
155 TPdfToolsOptimization_ImageRecompressionOptions* pImageRecompressionOptions);
188 TPdfToolsOptimization_ImageRecompressionOptions* pImageRecompressionOptions, double dCompressionQuality);
221 TPdfToolsOptimization_ImageRecompressionOptions* pImageRecompressionOptions);
254 TPdfToolsOptimization_ImageRecompressionOptions* pImageRecompressionOptions, BOOL bReduceColorComplexity);
255
256/******************************************************************************
257 * FontOptions
258 *****************************************************************************/
398 TPdfToolsOptimization_FontOptions* pFontOptions, BOOL bRemoveStandardFonts);
399
400/******************************************************************************
401 * RemovalOptions
402 *****************************************************************************/
438 TPdfToolsOptimization_RemovalOptions* pRemovalOptions, BOOL bRemoveAlternateImages);
474 TPdfToolsOptimization_RemovalOptions* pRemovalOptions, BOOL bRemoveArticleThreads);
520 TPdfToolsOptimization_RemovalOptions* pRemovalOptions, BOOL bRemoveMetadata);
566 TPdfToolsOptimization_RemovalOptions* pRemovalOptions, BOOL bRemoveOutputIntents);
610 TPdfToolsOptimization_RemovalOptions* pRemovalOptions, BOOL bRemovePieceInfo);
660 TPdfToolsOptimization_RemovalOptions* pRemovalOptions, BOOL bRemoveStructureTree);
696 TPdfToolsOptimization_RemovalOptions* pRemovalOptions, BOOL bRemoveThumbnails);
730 TPdfToolsOptimization_RemovalOptions* pRemovalOptions);
765 TPdfToolsOptimization_RemovalStrategy iRemoveSignatureAppearances);
905
906/******************************************************************************
907 * Optimizer
908 *****************************************************************************/
918
958 TPdfToolsPdf_OutputOptions* pOutOptions);
959
960#ifdef __cplusplus
961}
962#endif
963
964#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_ImageRecompressionOptions_SetReduceColorComplexity(TPdfToolsOptimization_ImageRecompressionOptions *pImageRecompressionOptions, BOOL bReduceColorComplexity)
Enable color complexity reduction. When enabled, the software analyzes images that utilize device col...
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_GetReduceColorComplexity(TPdfToolsOptimization_ImageRecompressionOptions *pImageRecompressionOptions)
Enable color complexity reduction. When enabled, the software analyzes images that utilize device col...
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:26
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:143
TPdfToolsOptimization_ConversionStrategy
The conversion strategy for PDF objects.
Definition PdfTools_Types.h:370
TPdfToolsOptimization_CompressionAlgorithmSelection
The strategy for recompressing images The strategy expresses the broad goal when recompressing images...
Definition PdfTools_Types.h:408
TPdfToolsOptimization_RemovalStrategy
The removal strategy for PDF objects.
Definition PdfTools_Types.h:388
#define BOOL
Definition PdfTools_Types.h:23
The parameters for font optimization.
The parameters for image recompression.
The class to optimize PDF documents.
The parameters defining the optional data to remove or flatten.
The base class for PDF optimization profiles The profile defines the optimization parameters suitable...
The PDF document PDF documents are either opened using PdfToolsPdf_Document_Open or the result of an ...
The parameters for document-level features of output PDFs Output options are used in many operations ...
Structure that groups a set of callbacks that model streams.
Definition PdfTools_PdfToolsSys.h:49