summaryrefslogtreecommitdiff
path: root/source/pdf/pdf-op-filter.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/pdf/pdf-op-filter.c')
-rw-r--r--source/pdf/pdf-op-filter.c42
1 files changed, 42 insertions, 0 deletions
diff --git a/source/pdf/pdf-op-filter.c b/source/pdf/pdf-op-filter.c
index ad80d3cd..a71f2fa7 100644
--- a/source/pdf/pdf-op-filter.c
+++ b/source/pdf/pdf-op-filter.c
@@ -389,6 +389,42 @@ pdf_filter_ri(fz_context *ctx, pdf_processor *proc, const char *intent)
}
static void
+pdf_filter_gs_OP(fz_context *ctx, pdf_processor *proc, int b)
+{
+ pdf_filter_processor *p = (pdf_filter_processor*)proc;
+ filter_flush(ctx, p, 0);
+ if (p->chain->op_gs_OP)
+ p->chain->op_gs_OP(ctx, p->chain, b);
+}
+
+static void
+pdf_filter_gs_op(fz_context *ctx, pdf_processor *proc, int b)
+{
+ pdf_filter_processor *p = (pdf_filter_processor*)proc;
+ filter_flush(ctx, p, 0);
+ if (p->chain->op_gs_op)
+ p->chain->op_gs_op(ctx, p->chain, b);
+}
+
+static void
+pdf_filter_gs_OPM(fz_context *ctx, pdf_processor *proc, int i)
+{
+ pdf_filter_processor *p = (pdf_filter_processor*)proc;
+ filter_flush(ctx, p, 0);
+ if (p->chain->op_gs_OPM)
+ p->chain->op_gs_OPM(ctx, p->chain, i);
+}
+
+static void
+pdf_filter_gs_UseBlackPtComp(fz_context *ctx, pdf_processor *proc, pdf_obj *name)
+{
+ pdf_filter_processor *p = (pdf_filter_processor*)proc;
+ filter_flush(ctx, p, 0);
+ if (p->chain->op_gs_UseBlackPtComp)
+ p->chain->op_gs_UseBlackPtComp(ctx, p->chain, name);
+}
+
+static void
pdf_filter_i(fz_context *ctx, pdf_processor *proc, float flatness)
{
pdf_filter_processor *p = (pdf_filter_processor*)proc;
@@ -1238,6 +1274,12 @@ pdf_new_filter_processor(fz_context *ctx, pdf_processor *chain, pdf_obj *old_rdb
proc->super.op_BX = pdf_filter_BX;
proc->super.op_EX = pdf_filter_EX;
+ /* extgstate */
+ proc->super.op_gs_OP = pdf_filter_gs_OP;
+ proc->super.op_gs_op = pdf_filter_gs_op;
+ proc->super.op_gs_OPM = pdf_filter_gs_OPM;
+ proc->super.op_gs_UseBlackPtComp = pdf_filter_gs_UseBlackPtComp;
+
proc->super.op_END = pdf_filter_END;
}