mirror of
https://github.com/YACReader/yacreader
synced 2025-07-22 23:15:14 -04:00
Update pdfium for windows
This commit is contained in:
179
dependencies/pdfium/win/public/fpdf_attachment.h
vendored
Normal file
179
dependencies/pdfium/win/public/fpdf_attachment.h
vendored
Normal file
@ -0,0 +1,179 @@
|
||||
// Copyright 2017 The PDFium Authors
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
#ifndef PUBLIC_FPDF_ATTACHMENT_H_
|
||||
#define PUBLIC_FPDF_ATTACHMENT_H_
|
||||
|
||||
// NOLINTNEXTLINE(build/include)
|
||||
#include "fpdfview.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif // __cplusplus
|
||||
|
||||
// Experimental API.
|
||||
// Get the number of embedded files in |document|.
|
||||
//
|
||||
// document - handle to a document.
|
||||
//
|
||||
// Returns the number of embedded files in |document|.
|
||||
FPDF_EXPORT int FPDF_CALLCONV
|
||||
FPDFDoc_GetAttachmentCount(FPDF_DOCUMENT document);
|
||||
|
||||
// Experimental API.
|
||||
// Add an embedded file with |name| in |document|. If |name| is empty, or if
|
||||
// |name| is the name of a existing embedded file in |document|, or if
|
||||
// |document|'s embedded file name tree is too deep (i.e. |document| has too
|
||||
// many embedded files already), then a new attachment will not be added.
|
||||
//
|
||||
// document - handle to a document.
|
||||
// name - name of the new attachment.
|
||||
//
|
||||
// Returns a handle to the new attachment object, or NULL on failure.
|
||||
FPDF_EXPORT FPDF_ATTACHMENT FPDF_CALLCONV
|
||||
FPDFDoc_AddAttachment(FPDF_DOCUMENT document, FPDF_WIDESTRING name);
|
||||
|
||||
// Experimental API.
|
||||
// Get the embedded attachment at |index| in |document|. Note that the returned
|
||||
// attachment handle is only valid while |document| is open.
|
||||
//
|
||||
// document - handle to a document.
|
||||
// index - the index of the requested embedded file.
|
||||
//
|
||||
// Returns the handle to the attachment object, or NULL on failure.
|
||||
FPDF_EXPORT FPDF_ATTACHMENT FPDF_CALLCONV
|
||||
FPDFDoc_GetAttachment(FPDF_DOCUMENT document, int index);
|
||||
|
||||
// Experimental API.
|
||||
// Delete the embedded attachment at |index| in |document|. Note that this does
|
||||
// not remove the attachment data from the PDF file; it simply removes the
|
||||
// file's entry in the embedded files name tree so that it does not appear in
|
||||
// the attachment list. This behavior may change in the future.
|
||||
//
|
||||
// document - handle to a document.
|
||||
// index - the index of the embedded file to be deleted.
|
||||
//
|
||||
// Returns true if successful.
|
||||
FPDF_EXPORT FPDF_BOOL FPDF_CALLCONV
|
||||
FPDFDoc_DeleteAttachment(FPDF_DOCUMENT document, int index);
|
||||
|
||||
// Experimental API.
|
||||
// Get the name of the |attachment| file. |buffer| is only modified if |buflen|
|
||||
// is longer than the length of the file name. On errors, |buffer| is unmodified
|
||||
// and the returned length is 0.
|
||||
//
|
||||
// attachment - handle to an attachment.
|
||||
// buffer - buffer for holding the file name, encoded in UTF-16LE.
|
||||
// buflen - length of the buffer in bytes.
|
||||
//
|
||||
// Returns the length of the file name in bytes.
|
||||
FPDF_EXPORT unsigned long FPDF_CALLCONV
|
||||
FPDFAttachment_GetName(FPDF_ATTACHMENT attachment,
|
||||
FPDF_WCHAR* buffer,
|
||||
unsigned long buflen);
|
||||
|
||||
// Experimental API.
|
||||
// Check if the params dictionary of |attachment| has |key| as a key.
|
||||
//
|
||||
// attachment - handle to an attachment.
|
||||
// key - the key to look for, encoded in UTF-8.
|
||||
//
|
||||
// Returns true if |key| exists.
|
||||
FPDF_EXPORT FPDF_BOOL FPDF_CALLCONV
|
||||
FPDFAttachment_HasKey(FPDF_ATTACHMENT attachment, FPDF_BYTESTRING key);
|
||||
|
||||
// Experimental API.
|
||||
// Get the type of the value corresponding to |key| in the params dictionary of
|
||||
// the embedded |attachment|.
|
||||
//
|
||||
// attachment - handle to an attachment.
|
||||
// key - the key to look for, encoded in UTF-8.
|
||||
//
|
||||
// Returns the type of the dictionary value.
|
||||
FPDF_EXPORT FPDF_OBJECT_TYPE FPDF_CALLCONV
|
||||
FPDFAttachment_GetValueType(FPDF_ATTACHMENT attachment, FPDF_BYTESTRING key);
|
||||
|
||||
// Experimental API.
|
||||
// Set the string value corresponding to |key| in the params dictionary of the
|
||||
// embedded file |attachment|, overwriting the existing value if any. The value
|
||||
// type should be FPDF_OBJECT_STRING after this function call succeeds.
|
||||
//
|
||||
// attachment - handle to an attachment.
|
||||
// key - the key to the dictionary entry, encoded in UTF-8.
|
||||
// value - the string value to be set, encoded in UTF-16LE.
|
||||
//
|
||||
// Returns true if successful.
|
||||
FPDF_EXPORT FPDF_BOOL FPDF_CALLCONV
|
||||
FPDFAttachment_SetStringValue(FPDF_ATTACHMENT attachment,
|
||||
FPDF_BYTESTRING key,
|
||||
FPDF_WIDESTRING value);
|
||||
|
||||
// Experimental API.
|
||||
// Get the string value corresponding to |key| in the params dictionary of the
|
||||
// embedded file |attachment|. |buffer| is only modified if |buflen| is longer
|
||||
// than the length of the string value. Note that if |key| does not exist in the
|
||||
// dictionary or if |key|'s corresponding value in the dictionary is not a
|
||||
// string (i.e. the value is not of type FPDF_OBJECT_STRING or
|
||||
// FPDF_OBJECT_NAME), then an empty string would be copied to |buffer| and the
|
||||
// return value would be 2. On other errors, nothing would be added to |buffer|
|
||||
// and the return value would be 0.
|
||||
//
|
||||
// attachment - handle to an attachment.
|
||||
// key - the key to the requested string value, encoded in UTF-8.
|
||||
// buffer - buffer for holding the string value encoded in UTF-16LE.
|
||||
// buflen - length of the buffer in bytes.
|
||||
//
|
||||
// Returns the length of the dictionary value string in bytes.
|
||||
FPDF_EXPORT unsigned long FPDF_CALLCONV
|
||||
FPDFAttachment_GetStringValue(FPDF_ATTACHMENT attachment,
|
||||
FPDF_BYTESTRING key,
|
||||
FPDF_WCHAR* buffer,
|
||||
unsigned long buflen);
|
||||
|
||||
// Experimental API.
|
||||
// Set the file data of |attachment|, overwriting the existing file data if any.
|
||||
// The creation date and checksum will be updated, while all other dictionary
|
||||
// entries will be deleted. Note that only contents with |len| smaller than
|
||||
// INT_MAX is supported.
|
||||
//
|
||||
// attachment - handle to an attachment.
|
||||
// contents - buffer holding the file data to write to |attachment|.
|
||||
// len - length of file data in bytes.
|
||||
//
|
||||
// Returns true if successful.
|
||||
FPDF_EXPORT FPDF_BOOL FPDF_CALLCONV
|
||||
FPDFAttachment_SetFile(FPDF_ATTACHMENT attachment,
|
||||
FPDF_DOCUMENT document,
|
||||
const void* contents,
|
||||
unsigned long len);
|
||||
|
||||
// Experimental API.
|
||||
// Get the file data of |attachment|.
|
||||
// When the attachment file data is readable, true is returned, and |out_buflen|
|
||||
// is updated to indicate the file data size. |buffer| is only modified if
|
||||
// |buflen| is non-null and long enough to contain the entire file data. Callers
|
||||
// must check both the return value and the input |buflen| is no less than the
|
||||
// returned |out_buflen| before using the data.
|
||||
//
|
||||
// Otherwise, when the attachment file data is unreadable or when |out_buflen|
|
||||
// is null, false is returned and |buffer| and |out_buflen| remain unmodified.
|
||||
//
|
||||
// attachment - handle to an attachment.
|
||||
// buffer - buffer for holding the file data from |attachment|.
|
||||
// buflen - length of the buffer in bytes.
|
||||
// out_buflen - pointer to the variable that will receive the minimum buffer
|
||||
// size to contain the file data of |attachment|.
|
||||
//
|
||||
// Returns true on success, false otherwise.
|
||||
FPDF_EXPORT FPDF_BOOL FPDF_CALLCONV
|
||||
FPDFAttachment_GetFile(FPDF_ATTACHMENT attachment,
|
||||
void* buffer,
|
||||
unsigned long buflen,
|
||||
unsigned long* out_buflen);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} // extern "C"
|
||||
#endif // __cplusplus
|
||||
|
||||
#endif // PUBLIC_FPDF_ATTACHMENT_H_
|
Reference in New Issue
Block a user