libmobi
C library for handling MOBI format ebook documents
|
Libmobi main header file. More...
#include <stdio.h>
#include <stdint.h>
#include <stdbool.h>
#include <time.h>
Go to the source code of this file.
Data Structures | |
struct | MOBIFileMeta |
Metadata of file types. More... | |
struct | MOBIPdbHeader |
Header of palmdoc database file. More... | |
struct | MOBIPdbRecord |
Metadata and data of a record. All records form a linked list. More... | |
struct | MOBIExthHeader |
Metadata and data of a EXTH record. All records form a linked list. More... | |
struct | MOBIExthMeta |
EXTH tag metadata. More... | |
struct | MOBIRecord0Header |
Header of the Record 0 meta-record. More... | |
struct | MOBIMobiHeader |
MOBI header which follows Record 0 header. More... | |
struct | MOBIData |
Main structure holding all metadata and unparsed records data. More... | |
struct | MOBIFdst |
Parsed FDST record. More... | |
struct | MOBIIndexTag |
Parsed tag for an index entry. More... | |
struct | MOBIIndexEntry |
Parsed INDX index entry. More... | |
struct | MOBIIndx |
Parsed INDX record. More... | |
struct | MOBIPart |
Reconstructed source file. More... | |
struct | MOBIRawml |
Main structure containing reconstructed source parts and indices. More... | |
Macros | |
#define | MOBI_EXPORT __attribute__((__visibility__("default"))) |
Visibility attributes for symbol export. | |
#define | MOBI_NOTSET UINT32_MAX |
Usually 32-bit values in mobi records with value 0xffffffff mean "value not set". | |
#define | MOBI_ENCRYPTION_NONE 0 |
#define | MOBI_ENCRYPTION_V1 1 |
#define | MOBI_ENCRYPTION_V2 2 |
#define | MOBI_COMPRESSION_NONE 1 |
#define | MOBI_COMPRESSION_PALMDOC 2 |
#define | MOBI_COMPRESSION_HUFFCDIC 17480 |
Typedefs | |
typedef struct MOBIPdbRecord | MOBIPdbRecord |
Metadata and data of a record. All records form a linked list. | |
typedef struct MOBIExthHeader | MOBIExthHeader |
Metadata and data of a EXTH record. All records form a linked list. | |
typedef struct MOBIData | MOBIData |
Main structure holding all metadata and unparsed records data. More... | |
typedef struct MOBIPart | MOBIPart |
Reconstructed source file. More... | |
Enumerations | |
enum | MOBI_RET { MOBI_SUCCESS = 0 , MOBI_ERROR = 1 , MOBI_PARAM_ERR = 2 , MOBI_DATA_CORRUPT = 3 , MOBI_FILE_NOT_FOUND = 4 , MOBI_FILE_ENCRYPTED = 5 , MOBI_FILE_UNSUPPORTED = 6 , MOBI_MALLOC_FAILED = 7 , MOBI_INIT_FAILED = 8 , MOBI_BUFFER_END = 9 , MOBI_XML_ERR = 10 , MOBI_DRM_PIDINV = 11 , MOBI_DRM_KEYNOTFOUND = 12 , MOBI_DRM_UNSUPPORTED = 13 , MOBI_WRITE_FAILED = 14 , MOBI_DRM_EXPIRED = 15 , MOBI_DRM_RANDOM_ERR = 16 } |
Error codes returned by functions. More... | |
enum | MOBIExthType { EXTH_NUMERIC = 0 , EXTH_STRING = 1 , EXTH_BINARY = 2 } |
EXTH record types. | |
enum | MOBIExthTag { EXTH_DRMSERVER = 1 , EXTH_DRMCOMMERCE = 2 , EXTH_DRMEBOOKBASE = 3 , EXTH_TITLE = 99 , EXTH_AUTHOR = 100 , EXTH_PUBLISHER = 101 , EXTH_IMPRINT = 102 , EXTH_DESCRIPTION = 103 , EXTH_ISBN = 104 , EXTH_SUBJECT = 105 , EXTH_PUBLISHINGDATE = 106 , EXTH_REVIEW = 107 , EXTH_CONTRIBUTOR = 108 , EXTH_RIGHTS = 109 , EXTH_SUBJECTCODE = 110 , EXTH_TYPE = 111 , EXTH_SOURCE = 112 , EXTH_ASIN = 113 , EXTH_VERSION = 114 , EXTH_SAMPLE = 115 , EXTH_STARTREADING = 116 , EXTH_ADULT = 117 , EXTH_PRICE = 118 , EXTH_CURRENCY = 119 , EXTH_KF8BOUNDARY = 121 , EXTH_FIXEDLAYOUT = 122 , EXTH_BOOKTYPE = 123 , EXTH_ORIENTATIONLOCK = 124 , EXTH_COUNTRESOURCES = 125 , EXTH_ORIGRESOLUTION = 126 , EXTH_ZEROGUTTER = 127 , EXTH_ZEROMARGIN = 128 , EXTH_KF8COVERURI = 129 , EXTH_RESCOFFSET = 131 , EXTH_REGIONMAGNI = 132 , EXTH_DICTNAME = 200 , EXTH_COVEROFFSET = 201 , EXTH_THUMBOFFSET = 202 , EXTH_HASFAKECOVER = 203 , EXTH_CREATORSOFT = 204 , EXTH_CREATORMAJOR = 205 , EXTH_CREATORMINOR = 206 , EXTH_CREATORBUILD = 207 , EXTH_WATERMARK = 208 , EXTH_TAMPERKEYS = 209 , EXTH_FONTSIGNATURE = 300 , EXTH_CLIPPINGLIMIT = 401 , EXTH_PUBLISHERLIMIT = 402 , EXTH_UNK403 = 403 , EXTH_TTSDISABLE = 404 , EXTH_READFORFREE = 405 , EXTH_RENTAL = 406 , EXTH_UNK407 = 407 , EXTH_UNK450 = 450 , EXTH_UNK451 = 451 , EXTH_UNK452 = 452 , EXTH_UNK453 = 453 , EXTH_DOCTYPE = 501 , EXTH_LASTUPDATE = 502 , EXTH_UPDATEDTITLE = 503 , EXTH_ASIN504 = 504 , EXTH_TITLEFILEAS = 508 , EXTH_CREATORFILEAS = 517 , EXTH_PUBLISHERFILEAS = 522 , EXTH_LANGUAGE = 524 , EXTH_ALIGNMENT = 525 , EXTH_CREATORSTRING = 526 , EXTH_PAGEDIR = 527 , EXTH_OVERRIDEFONTS = 528 , EXTH_SORCEDESC = 529 , EXTH_DICTLANGIN = 531 , EXTH_DICTLANGOUT = 532 , EXTH_INPUTSOURCE = 534 , EXTH_CREATORBUILDREV = 535 } |
EXTH record tags. More... | |
enum | MOBIFiletype { T_UNKNOWN , T_HTML , T_CSS , T_SVG , T_OPF , T_NCX , T_JPG , T_GIF , T_PNG , T_BMP , T_OTF , T_TTF , T_MP3 , T_MPG , T_PDF , T_FONT , T_AUDIO , T_VIDEO , T_BREAK } |
Types of files stored in database records. More... | |
enum | MOBIEncoding { MOBI_CP1252 = 1252 , MOBI_UTF8 = 65001 , MOBI_UTF16 = 65002 } |
Encoding types in MOBI header (offset 28) More... | |
Functions | |
MOBI_EXPORT const char * | mobi_version (void) |
Get libmobi version. More... | |
MOBI_EXPORT MOBI_RET | mobi_load_file (MOBIData *m, FILE *file) |
Read MOBI document from file into MOBIData structure. More... | |
MOBI_EXPORT MOBI_RET | mobi_load_filename (MOBIData *m, const char *path) |
Read MOBI document from a path into MOBIData structure. More... | |
MOBI_EXPORT MOBIData * | mobi_init (void) |
Initializer for MOBIData structure. More... | |
MOBI_EXPORT void | mobi_free (MOBIData *m) |
Free MOBIData structure and all its children. More... | |
MOBI_EXPORT MOBI_RET | mobi_parse_kf7 (MOBIData *m) |
Loader will parse KF7 part of hybrid file. More... | |
MOBI_EXPORT MOBI_RET | mobi_parse_kf8 (MOBIData *m) |
Loader will parse KF8 part of hybrid file. More... | |
MOBI_EXPORT MOBI_RET | mobi_parse_rawml (MOBIRawml *rawml, const MOBIData *m) |
Parse raw records into html flow parts, markup parts, resources and indices. More... | |
MOBI_EXPORT MOBI_RET | mobi_parse_rawml_opt (MOBIRawml *rawml, const MOBIData *m, bool parse_toc, bool parse_dict, bool reconstruct) |
Parse raw records into html flow parts, markup parts, resources and indices. Individual stages of the parsing may be turned on/off. More... | |
MOBI_EXPORT MOBI_RET | mobi_get_rawml (const MOBIData *m, char *text, size_t *len) |
Decompress text to a text buffer. More... | |
MOBI_EXPORT MOBI_RET | mobi_dump_rawml (const MOBIData *m, FILE *file) |
Decompress text record to an open file descriptor. More... | |
MOBI_EXPORT MOBI_RET | mobi_decode_font_resource (unsigned char **decoded_font, size_t *decoded_size, MOBIPart *part) |
Deobfuscator and decompressor for font resources. More... | |
MOBI_EXPORT MOBI_RET | mobi_decode_audio_resource (unsigned char **decoded_resource, size_t *decoded_size, MOBIPart *part) |
Decode audio resource. More... | |
MOBI_EXPORT MOBI_RET | mobi_decode_video_resource (unsigned char **decoded_resource, size_t *decoded_size, MOBIPart *part) |
Decode video resource. More... | |
MOBI_EXPORT MOBI_RET | mobi_get_embedded_source (unsigned char **data, size_t *size, const MOBIData *m) |
Get embedded source archive. More... | |
MOBI_EXPORT MOBI_RET | mobi_get_embedded_log (unsigned char **data, size_t *size, const MOBIData *m) |
Get embedded conversion log. More... | |
MOBI_EXPORT MOBIPdbRecord * | mobi_get_record_by_uid (const MOBIData *m, const size_t uid) |
Get palm database record with given unique id. More... | |
MOBI_EXPORT MOBIPdbRecord * | mobi_get_record_by_seqnumber (const MOBIData *m, const size_t uid) |
Get palm database record with given sequential number (first record has number 0) More... | |
MOBI_EXPORT MOBIPart * | mobi_get_flow_by_uid (const MOBIRawml *rawml, const size_t uid) |
Get rawml->flow MOBIPart part by uid. More... | |
MOBI_EXPORT MOBIPart * | mobi_get_flow_by_fid (const MOBIRawml *rawml, const char *fid) |
Find flow part by flow id (fid) from kindle:flow:fid link. Flow fid is base32 encoded part uid. More... | |
MOBI_EXPORT MOBIPart * | mobi_get_resource_by_uid (const MOBIRawml *rawml, const size_t uid) |
Get MOBIPart resource record with given unique id. More... | |
MOBI_EXPORT MOBIPart * | mobi_get_resource_by_fid (const MOBIRawml *rawml, const char *fid) |
Find resource by flow id (fid) from kindle:embed:fid link. Flow fid is base32 encoded part uid. More... | |
MOBI_EXPORT MOBIPart * | mobi_get_part_by_uid (const MOBIRawml *rawml, const size_t uid) |
Get rawml->markup MOBIPart part by uid. More... | |
MOBI_EXPORT MOBI_RET | mobi_get_fullname (const MOBIData *m, char *fullname, const size_t len) |
Get ebook full name stored in Record 0 at offset given in MOBI header. More... | |
MOBI_EXPORT size_t | mobi_get_first_resource_record (const MOBIData *m) |
Get sequential number of first resource record (image/font etc) More... | |
MOBI_EXPORT size_t | mobi_get_text_maxsize (const MOBIData *m) |
Get maximal size of all uncompressed text records. More... | |
MOBI_EXPORT uint16_t | mobi_get_textrecord_maxsize (const MOBIData *m) |
Get maximal size of uncompressed text record. More... | |
MOBI_EXPORT size_t | mobi_get_kf8offset (const MOBIData *m) |
Get offset of KF8 Boundary for KF7/KF8 hybrid file cached in MOBIData structure. More... | |
MOBI_EXPORT size_t | mobi_get_kf8boundary_seqnumber (const MOBIData *m) |
Get sequential number of KF8 Boundary record for KF7/KF8 hybrid file. More... | |
MOBI_EXPORT size_t | mobi_get_record_extrasize (const MOBIPdbRecord *record, const uint16_t flags) |
Calculate the size of extra bytes at the end of text record. More... | |
MOBI_EXPORT size_t | mobi_get_record_mb_extrasize (const MOBIPdbRecord *record, const uint16_t flags) |
Calculate the size of extra multibyte section at the end of text record. More... | |
MOBI_EXPORT size_t | mobi_get_fileversion (const MOBIData *m) |
Get mobi file version. More... | |
MOBI_EXPORT size_t | mobi_get_fdst_record_number (const MOBIData *m) |
Get sequential number of FDST record. More... | |
MOBI_EXPORT MOBIExthHeader * | mobi_get_exthrecord_by_tag (const MOBIData *m, const MOBIExthTag tag) |
Get EXTH record with given MOBIExthTag tag. More... | |
MOBI_EXPORT MOBIExthHeader * | mobi_next_exthrecord_by_tag (const MOBIData *m, const MOBIExthTag tag, MOBIExthHeader **start) |
Get EXTH record with given MOBIExthTag tag. Start list search at given record. More... | |
MOBI_EXPORT MOBI_RET | mobi_delete_exthrecord_by_tag (MOBIData *m, const MOBIExthTag tag) |
Delete all EXTH records with given MOBIExthTag tag. More... | |
MOBI_EXPORT MOBI_RET | mobi_add_exthrecord (MOBIData *m, const MOBIExthTag tag, const uint32_t size, const void *value) |
Add new EXTH record with given tag and value. More... | |
MOBI_EXPORT MOBIExthMeta | mobi_get_exthtagmeta_by_tag (const MOBIExthTag tag) |
Get MOBIExthMeta tag structure by MOBIExthTag tag id. More... | |
MOBI_EXPORT MOBIFileMeta | mobi_get_filemeta_by_type (const MOBIFiletype type) |
Get MOBIFileMeta tag structure by MOBIFiletype type. More... | |
MOBI_EXPORT uint32_t | mobi_decode_exthvalue (const unsigned char *data, const size_t size) |
Decode big-endian value stored in EXTH record. More... | |
MOBI_EXPORT char * | mobi_decode_exthstring (const MOBIData *m, const unsigned char *data, const size_t size) |
Decode string stored in EXTH record. More... | |
MOBI_EXPORT struct tm * | mobi_pdbtime_to_time (const long pdb_time) |
Convert time values from palmdoc header to time tm struct. More... | |
MOBI_EXPORT const char * | mobi_get_locale_string (const uint32_t locale) |
Get pointer to locale tag for a given Mobipocket locale number. More... | |
MOBI_EXPORT size_t | mobi_get_locale_number (const char *locale_string) |
Get Mobipocket locale number for a given string tag. More... | |
MOBI_EXPORT uint32_t | mobi_get_orth_entry_offset (const MOBIIndexEntry *entry) |
Get entry start offset for the orth entry. More... | |
MOBI_EXPORT uint32_t | mobi_get_orth_entry_length (const MOBIIndexEntry *entry) |
Get text length for the orth entry. More... | |
MOBI_EXPORT MOBI_RET | mobi_remove_hybrid_part (MOBIData *m, const bool remove_kf8) |
Remove one version from hybrid file. More... | |
MOBI_EXPORT bool | mobi_exists_mobiheader (const MOBIData *m) |
Check if MOBI header is loaded / present in the loaded file. More... | |
MOBI_EXPORT bool | mobi_exists_fdst (const MOBIData *m) |
Check if FDST record is present in the loaded file. More... | |
MOBI_EXPORT bool | mobi_exists_skel_indx (const MOBIData *m) |
Check if skeleton INDX is present in the loaded file. More... | |
MOBI_EXPORT bool | mobi_exists_frag_indx (const MOBIData *m) |
Check if fragments INDX is present in the loaded file. More... | |
MOBI_EXPORT bool | mobi_exists_guide_indx (const MOBIData *m) |
Check if guide INDX is present in the loaded file. More... | |
MOBI_EXPORT bool | mobi_exists_ncx (const MOBIData *m) |
Check if ncx INDX is present in the loaded file. More... | |
MOBI_EXPORT bool | mobi_exists_orth (const MOBIData *m) |
Check if orth INDX is present in the loaded file. More... | |
MOBI_EXPORT bool | mobi_exists_infl (const MOBIData *m) |
Check if infl INDX is present in the loaded file. More... | |
MOBI_EXPORT bool | mobi_is_hybrid (const MOBIData *m) |
Check if loaded MOBI data is KF7/KF8 hybrid file. More... | |
MOBI_EXPORT bool | mobi_is_encrypted (const MOBIData *m) |
Check if loaded document is encrypted. More... | |
MOBI_EXPORT bool | mobi_is_mobipocket (const MOBIData *m) |
Check if loaded document is MOBI/BOOK Mobipocket format. More... | |
MOBI_EXPORT bool | mobi_is_dictionary (const MOBIData *m) |
Check if loaded document is dictionary. More... | |
MOBI_EXPORT bool | mobi_is_kf8 (const MOBIData *m) |
Is file version 8 or above. More... | |
MOBI_EXPORT bool | mobi_is_replica (const MOBIData *m) |
Check if loaded document is Print Replica type. More... | |
MOBI_EXPORT bool | mobi_is_rawml_kf8 (const MOBIRawml *rawml) |
Is file version 8 or above. More... | |
MOBI_EXPORT MOBIRawml * | mobi_init_rawml (const MOBIData *m) |
Initialize and return MOBIRawml structure. More... | |
MOBI_EXPORT void | mobi_free_rawml (MOBIRawml *rawml) |
Free MOBIRawml structure allocated by mobi_init_rawml() More... | |
MOBI_EXPORT char * | mobi_meta_get_title (const MOBIData *m) |
Get document title metadata. More... | |
MOBI_EXPORT char * | mobi_meta_get_author (const MOBIData *m) |
Get document author metadata. More... | |
MOBI_EXPORT char * | mobi_meta_get_publisher (const MOBIData *m) |
Get document publisher metadata. More... | |
MOBI_EXPORT char * | mobi_meta_get_imprint (const MOBIData *m) |
Get document imprint metadata. More... | |
MOBI_EXPORT char * | mobi_meta_get_description (const MOBIData *m) |
Get document description metadata. More... | |
MOBI_EXPORT char * | mobi_meta_get_isbn (const MOBIData *m) |
Get document ISBN metadata. More... | |
MOBI_EXPORT char * | mobi_meta_get_subject (const MOBIData *m) |
Get document subject metadata. More... | |
MOBI_EXPORT char * | mobi_meta_get_publishdate (const MOBIData *m) |
Get document publishing date metadata. More... | |
MOBI_EXPORT char * | mobi_meta_get_review (const MOBIData *m) |
Get document review metadata. More... | |
MOBI_EXPORT char * | mobi_meta_get_contributor (const MOBIData *m) |
Get document contributor metadata. More... | |
MOBI_EXPORT char * | mobi_meta_get_copyright (const MOBIData *m) |
Get document copyright metadata. More... | |
MOBI_EXPORT char * | mobi_meta_get_asin (const MOBIData *m) |
Get document ASIN metadata. More... | |
MOBI_EXPORT char * | mobi_meta_get_language (const MOBIData *m) |
Get document language code metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_set_title (MOBIData *m, const char *title) |
Set document title metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_add_title (MOBIData *m, const char *title) |
Add document title metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_delete_title (MOBIData *m) |
Delete all title metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_set_author (MOBIData *m, const char *author) |
Set document author metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_add_author (MOBIData *m, const char *author) |
Add document author metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_delete_author (MOBIData *m) |
Delete all author metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_set_publisher (MOBIData *m, const char *publisher) |
Set document publisher metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_add_publisher (MOBIData *m, const char *publisher) |
Add document publisher metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_delete_publisher (MOBIData *m) |
Delete all publisher metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_set_imprint (MOBIData *m, const char *imprint) |
Set document imprint metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_add_imprint (MOBIData *m, const char *imprint) |
Add document imprint metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_delete_imprint (MOBIData *m) |
Delete all imprint metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_set_description (MOBIData *m, const char *description) |
Set document description metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_add_description (MOBIData *m, const char *description) |
Add document description metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_delete_description (MOBIData *m) |
Delete all description metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_set_isbn (MOBIData *m, const char *isbn) |
Set document isbn metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_add_isbn (MOBIData *m, const char *isbn) |
Add document isbn metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_delete_isbn (MOBIData *m) |
Delete all isbn metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_set_subject (MOBIData *m, const char *subject) |
Set document subject metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_add_subject (MOBIData *m, const char *subject) |
Add document subject metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_delete_subject (MOBIData *m) |
Delete all subject metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_set_publishdate (MOBIData *m, const char *publishdate) |
Set document publishdate metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_add_publishdate (MOBIData *m, const char *publishdate) |
Add document publishdate metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_delete_publishdate (MOBIData *m) |
Delete all publishdate metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_set_review (MOBIData *m, const char *review) |
Set document review metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_add_review (MOBIData *m, const char *review) |
Add document review metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_delete_review (MOBIData *m) |
Delete all review metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_set_contributor (MOBIData *m, const char *contributor) |
Set document contributor metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_add_contributor (MOBIData *m, const char *contributor) |
Add document contributor metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_delete_contributor (MOBIData *m) |
Delete all contributor metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_set_copyright (MOBIData *m, const char *copyright) |
Set document copyright metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_add_copyright (MOBIData *m, const char *copyright) |
Add document copyright metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_delete_copyright (MOBIData *m) |
Delete all copyright metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_set_asin (MOBIData *m, const char *asin) |
Set document asin metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_add_asin (MOBIData *m, const char *asin) |
Add document asin metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_delete_asin (MOBIData *m) |
Delete all asin metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_set_language (MOBIData *m, const char *language) |
Set document language code metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_add_language (MOBIData *m, const char *language) |
Add document language code metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_meta_delete_language (MOBIData *m) |
Delete all language code metadata. More... | |
MOBI_EXPORT MOBI_RET | mobi_drm_setkey (MOBIData *m, const char *pid) |
Store PID for encryption in MOBIData stucture. More... | |
MOBI_EXPORT MOBI_RET | mobi_drm_setkey_serial (MOBIData *m, const char *serial) |
Store PID for encryption in MOBIData stucture. PID will be calculated from device serial number. More... | |
MOBI_EXPORT MOBI_RET | mobi_drm_addvoucher (MOBIData *m, const char *serial, const time_t valid_from, const time_t valid_to, const MOBIExthTag *tamperkeys, const size_t tamperkeys_count) |
Add DRM voucher. More... | |
MOBI_EXPORT MOBI_RET | mobi_drm_delkey (MOBIData *m) |
Remove PID stored for encryption from MOBIData structure. More... | |
MOBI_EXPORT MOBI_RET | mobi_drm_decrypt (MOBIData *m) |
Decrypt document. More... | |
MOBI_EXPORT MOBI_RET | mobi_drm_encrypt (MOBIData *m) |
Encrypt document. More... | |
MOBI_EXPORT MOBI_RET | mobi_write_file (FILE *file, MOBIData *m) |
Write mobi document to file. More... | |
Libmobi main header file.
This file is installed with the library. Include it in your project with "#include <mobi.h>". See example of usage in mobitool.c, mobimeta.c, mobidrm.c
Copyright (c) 2014-2022 Bartek Fabiszewski http://www.fabiszewski.net
This file is part of libmobi. Licensed under LGPL, either version 3, or any later. See http://www.gnu.org/licenses/
#define MOBI_COMPRESSION_HUFFCDIC 17480 |
Text record compression type: huff/cdic
#define MOBI_COMPRESSION_NONE 1 |
Text record compression type: none
#define MOBI_COMPRESSION_PALMDOC 2 |
Text record compression type: palmdoc
#define MOBI_ENCRYPTION_NONE 0 |
Text record encryption type: none
#define MOBI_ENCRYPTION_V1 1 |
Text record encryption type: old mobipocket
#define MOBI_ENCRYPTION_V2 2 |
Text record encryption type: mobipocket