mupdf
Loading...
Searching...
No Matches
interpret.h File Reference
Include dependency graph for interpret.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  pdf_resource_stack
struct  pdf_processor
struct  pdf_csi
struct  pdf_filter_factory
struct  pdf_filter_options
struct  pdf_sanitize_filter_options
struct  pdf_vectorize_filter_options
struct  pdf_color_filter_options
struct  pdf_text_state
struct  pdf_text_object_state

Typedefs

typedef struct pdf_gstate pdf_gstate
typedef struct pdf_processor pdf_processor
typedef struct pdf_filter_options pdf_filter_options
typedef pdf_processorpdf_filter_factory_fn(fz_context *ctx, pdf_document *doc, pdf_processor *chain, int struct_parents, fz_matrix transform, pdf_filter_options *options, void *factory_options)

Enumerations

enum  pdf_processor_requirements { PDF_PROCESSOR_REQUIRES_DECODED_IMAGES = 1 }
enum  fz_cull_type {
  FZ_CULL_PATH_DROP = 0 , FZ_CULL_PATH_FILL = 1 , FZ_CULL_PATH_STROKE = 2 , FZ_CULL_PATH_FILL_STROKE = 3 ,
  FZ_CULL_CLIP_PATH_DROP = 4 , FZ_CULL_CLIP_PATH_FILL = 5 , FZ_CULL_CLIP_PATH_STROKE = 6 , FZ_CULL_CLIP_PATH_FILL_STROKE = 7 ,
  FZ_CULL_GLYPH = 8 , FZ_CULL_IMAGE , FZ_CULL_SHADING
}

Functions

void * pdf_new_processor (fz_context *ctx, int size)
pdf_processorpdf_keep_processor (fz_context *ctx, pdf_processor *proc)
void pdf_close_processor (fz_context *ctx, pdf_processor *proc)
void pdf_drop_processor (fz_context *ctx, pdf_processor *proc)
pdf_objpdf_lookup_resource (fz_context *ctx, pdf_resource_stack *stack, pdf_obj *type, const char *name)
void pdf_count_q_balance (fz_context *ctx, pdf_document *doc, pdf_obj *res, pdf_obj *stm, int *prepend, int *append)
pdf_processorpdf_new_run_processor (fz_context *ctx, pdf_document *doc, fz_device *dev, fz_matrix ctm, int struct_parent, const char *usage, pdf_gstate *gstate, fz_default_colorspaces *default_cs, fz_cookie *cookie, pdf_gstate *fill_gstate, pdf_gstate *stroke_gstate)
pdf_processorpdf_new_buffer_processor (fz_context *ctx, fz_buffer *buffer, int ahxencode, int newlines)
void pdf_reset_processor (fz_context *ctx, pdf_processor *proc)
pdf_processorpdf_new_output_processor (fz_context *ctx, fz_output *out, int ahxencode, int newlines)
pdf_processorpdf_new_sanitize_filter (fz_context *ctx, pdf_document *doc, pdf_processor *chain, int struct_parents, fz_matrix transform, pdf_filter_options *options, void *sopts)
pdf_processorpdf_new_vectorize_filter (fz_context *ctx, pdf_document *doc, pdf_processor *chain, int structparents, fz_matrix transform, pdf_filter_options *options, void *vopts)
pdf_objpdf_filter_xobject_instance (fz_context *ctx, pdf_obj *old_xobj, pdf_obj *page_res, fz_matrix ctm, pdf_filter_options *options, pdf_cycle_list *cycle_up)
void pdf_processor_push_resources (fz_context *ctx, pdf_processor *proc, pdf_obj *res)
pdf_objpdf_processor_pop_resources (fz_context *ctx, pdf_processor *proc)
pdf_processorpdf_new_color_filter (fz_context *ctx, pdf_document *doc, pdf_processor *chain, int struct_parents, fz_matrix transform, pdf_filter_options *options, void *copts)
void pdf_process_contents (fz_context *ctx, pdf_processor *proc, pdf_document *doc, pdf_obj *res, pdf_obj *stm, fz_cookie *cookie, pdf_obj **out_res)
void pdf_process_annot (fz_context *ctx, pdf_processor *proc, pdf_annot *annot, fz_cookie *cookie)
void pdf_process_glyph (fz_context *ctx, pdf_processor *proc, pdf_document *doc, pdf_obj *resources, fz_buffer *contents)
void pdf_process_raw_contents (fz_context *ctx, pdf_processor *proc, pdf_document *doc, pdf_obj *stmobj, fz_cookie *cookie)
void pdf_tos_save (fz_context *ctx, pdf_text_object_state *tos, fz_matrix save[2])
void pdf_tos_restore (fz_context *ctx, pdf_text_object_state *tos, fz_matrix save[2])
fz_textpdf_tos_get_text (fz_context *ctx, pdf_text_object_state *tos)
fz_textpdf_tos_get_clip_text (fz_context *ctx, pdf_text_object_state *tos)
void pdf_tos_reset (fz_context *ctx, pdf_text_object_state *tos, int render)
void pdf_tos_accumulate_clip (fz_context *ctx, pdf_text_object_state *tos)
int pdf_tos_make_trm (fz_context *ctx, pdf_text_object_state *tos, pdf_text_state *text, pdf_font_desc *fontdesc, int cid, fz_matrix *trm, float *adv)
void pdf_tos_move_after_char (fz_context *ctx, pdf_text_object_state *tos)
void pdf_tos_translate (pdf_text_object_state *tos, float tx, float ty)
void pdf_tos_set_matrix (pdf_text_object_state *tos, float a, float b, float c, float d, float e, float f)
void pdf_tos_newline (pdf_text_object_state *tos, float leading)

Typedef Documentation

◆ pdf_filter_factory_fn

typedef pdf_processor * pdf_filter_factory_fn(fz_context *ctx, pdf_document *doc, pdf_processor *chain, int struct_parents, fz_matrix transform, pdf_filter_options *options, void *factory_options)

◆ pdf_filter_options

typedef struct pdf_filter_options pdf_filter_options

◆ pdf_gstate

typedef struct pdf_gstate pdf_gstate

◆ pdf_processor

typedef struct pdf_processor pdf_processor

Enumeration Type Documentation

◆ fz_cull_type

Enumerator
FZ_CULL_PATH_DROP 
FZ_CULL_PATH_FILL 
FZ_CULL_PATH_STROKE 
FZ_CULL_PATH_FILL_STROKE 
FZ_CULL_CLIP_PATH_DROP 
FZ_CULL_CLIP_PATH_FILL 
FZ_CULL_CLIP_PATH_STROKE 
FZ_CULL_CLIP_PATH_FILL_STROKE 
FZ_CULL_GLYPH 
FZ_CULL_IMAGE 
FZ_CULL_SHADING 

◆ pdf_processor_requirements

Enumerator
PDF_PROCESSOR_REQUIRES_DECODED_IMAGES 

Function Documentation

◆ pdf_close_processor()

void pdf_close_processor ( fz_context * ctx,
pdf_processor * proc )

◆ pdf_count_q_balance()

void pdf_count_q_balance ( fz_context * ctx,
pdf_document * doc,
pdf_obj * res,
pdf_obj * stm,
int * prepend,
int * append )

◆ pdf_drop_processor()

void pdf_drop_processor ( fz_context * ctx,
pdf_processor * proc )

◆ pdf_filter_xobject_instance()

pdf_obj * pdf_filter_xobject_instance ( fz_context * ctx,
pdf_obj * old_xobj,
pdf_obj * page_res,
fz_matrix ctm,
pdf_filter_options * options,
pdf_cycle_list * cycle_up )

◆ pdf_keep_processor()

pdf_processor * pdf_keep_processor ( fz_context * ctx,
pdf_processor * proc )

◆ pdf_lookup_resource()

pdf_obj * pdf_lookup_resource ( fz_context * ctx,
pdf_resource_stack * stack,
pdf_obj * type,
const char * name )

◆ pdf_new_buffer_processor()

pdf_processor * pdf_new_buffer_processor ( fz_context * ctx,
fz_buffer * buffer,
int ahxencode,
int newlines )

◆ pdf_new_color_filter()

pdf_processor * pdf_new_color_filter ( fz_context * ctx,
pdf_document * doc,
pdf_processor * chain,
int struct_parents,
fz_matrix transform,
pdf_filter_options * options,
void * copts )

◆ pdf_new_output_processor()

pdf_processor * pdf_new_output_processor ( fz_context * ctx,
fz_output * out,
int ahxencode,
int newlines )

◆ pdf_new_processor()

void * pdf_new_processor ( fz_context * ctx,
int size )

◆ pdf_new_run_processor()

pdf_processor * pdf_new_run_processor ( fz_context * ctx,
pdf_document * doc,
fz_device * dev,
fz_matrix ctm,
int struct_parent,
const char * usage,
pdf_gstate * gstate,
fz_default_colorspaces * default_cs,
fz_cookie * cookie,
pdf_gstate * fill_gstate,
pdf_gstate * stroke_gstate )

◆ pdf_new_sanitize_filter()

pdf_processor * pdf_new_sanitize_filter ( fz_context * ctx,
pdf_document * doc,
pdf_processor * chain,
int struct_parents,
fz_matrix transform,
pdf_filter_options * options,
void * sopts )

◆ pdf_new_vectorize_filter()

pdf_processor * pdf_new_vectorize_filter ( fz_context * ctx,
pdf_document * doc,
pdf_processor * chain,
int structparents,
fz_matrix transform,
pdf_filter_options * options,
void * vopts )

◆ pdf_process_annot()

void pdf_process_annot ( fz_context * ctx,
pdf_processor * proc,
pdf_annot * annot,
fz_cookie * cookie )

◆ pdf_process_contents()

void pdf_process_contents ( fz_context * ctx,
pdf_processor * proc,
pdf_document * doc,
pdf_obj * res,
pdf_obj * stm,
fz_cookie * cookie,
pdf_obj ** out_res )

◆ pdf_process_glyph()

void pdf_process_glyph ( fz_context * ctx,
pdf_processor * proc,
pdf_document * doc,
pdf_obj * resources,
fz_buffer * contents )

◆ pdf_process_raw_contents()

void pdf_process_raw_contents ( fz_context * ctx,
pdf_processor * proc,
pdf_document * doc,
pdf_obj * stmobj,
fz_cookie * cookie )

◆ pdf_processor_pop_resources()

pdf_obj * pdf_processor_pop_resources ( fz_context * ctx,
pdf_processor * proc )

◆ pdf_processor_push_resources()

void pdf_processor_push_resources ( fz_context * ctx,
pdf_processor * proc,
pdf_obj * res )

◆ pdf_reset_processor()

void pdf_reset_processor ( fz_context * ctx,
pdf_processor * proc )

◆ pdf_tos_accumulate_clip()

void pdf_tos_accumulate_clip ( fz_context * ctx,
pdf_text_object_state * tos )

◆ pdf_tos_get_clip_text()

fz_text * pdf_tos_get_clip_text ( fz_context * ctx,
pdf_text_object_state * tos )

◆ pdf_tos_get_text()

fz_text * pdf_tos_get_text ( fz_context * ctx,
pdf_text_object_state * tos )

◆ pdf_tos_make_trm()

int pdf_tos_make_trm ( fz_context * ctx,
pdf_text_object_state * tos,
pdf_text_state * text,
pdf_font_desc * fontdesc,
int cid,
fz_matrix * trm,
float * adv )

◆ pdf_tos_move_after_char()

void pdf_tos_move_after_char ( fz_context * ctx,
pdf_text_object_state * tos )

◆ pdf_tos_newline()

void pdf_tos_newline ( pdf_text_object_state * tos,
float leading )

◆ pdf_tos_reset()

void pdf_tos_reset ( fz_context * ctx,
pdf_text_object_state * tos,
int render )

◆ pdf_tos_restore()

void pdf_tos_restore ( fz_context * ctx,
pdf_text_object_state * tos,
fz_matrix save[2] )

◆ pdf_tos_save()

void pdf_tos_save ( fz_context * ctx,
pdf_text_object_state * tos,
fz_matrix save[2] )

◆ pdf_tos_set_matrix()

void pdf_tos_set_matrix ( pdf_text_object_state * tos,
float a,
float b,
float c,
float d,
float e,
float f )

◆ pdf_tos_translate()

void pdf_tos_translate ( pdf_text_object_state * tos,
float tx,
float ty )