summaryrefslogtreecommitdiff
path: root/source/pdf/pdf-xobject.c
diff options
context:
space:
mode:
authorTor Andersson <tor.andersson@artifex.com>2018-03-29 22:25:09 +0200
committerTor Andersson <tor.andersson@artifex.com>2018-04-24 16:47:43 +0200
commit51b8205a513e86c62121a927a067632c1a933839 (patch)
treec2882a6c253a715bfc2ea72854c75350f0b2024b /source/pdf/pdf-xobject.c
parent67a7449fc1f186f318942b9c6b8d66d4458b7d87 (diff)
downloadmupdf-51b8205a513e86c62121a927a067632c1a933839.tar.xz
Remove need for namedump by using macros and preprocessor.
Add a PDF_NAME(Foo) macro that evaluates to a pdf_obj for /Foo. Use the C preprocessor to create the enum values and string table from one include file instead of using a separate code generator tool.
Diffstat (limited to 'source/pdf/pdf-xobject.c')
-rw-r--r--source/pdf/pdf-xobject.c42
1 files changed, 21 insertions, 21 deletions
diff --git a/source/pdf/pdf-xobject.c b/source/pdf/pdf-xobject.c
index 975b3e76..87221737 100644
--- a/source/pdf/pdf-xobject.c
+++ b/source/pdf/pdf-xobject.c
@@ -4,42 +4,42 @@
pdf_obj *
pdf_xobject_resources(fz_context *ctx, pdf_obj *xobj)
{
- return pdf_dict_get(ctx, xobj, PDF_NAME_Resources);
+ return pdf_dict_get(ctx, xobj, PDF_NAME(Resources));
}
fz_rect *
pdf_xobject_bbox(fz_context *ctx, pdf_obj *xobj, fz_rect *bbox)
{
- return pdf_to_rect(ctx, pdf_dict_get(ctx, xobj, PDF_NAME_BBox), bbox);
+ return pdf_to_rect(ctx, pdf_dict_get(ctx, xobj, PDF_NAME(BBox)), bbox);
}
fz_matrix *
pdf_xobject_matrix(fz_context *ctx, pdf_obj *xobj, fz_matrix *matrix)
{
- return pdf_to_matrix(ctx, pdf_dict_get(ctx, xobj, PDF_NAME_Matrix), matrix);
+ return pdf_to_matrix(ctx, pdf_dict_get(ctx, xobj, PDF_NAME(Matrix)), matrix);
}
int pdf_xobject_isolated(fz_context *ctx, pdf_obj *xobj)
{
- pdf_obj *group = pdf_dict_get(ctx, xobj, PDF_NAME_Group);
+ pdf_obj *group = pdf_dict_get(ctx, xobj, PDF_NAME(Group));
if (group)
- return pdf_to_bool(ctx, pdf_dict_get(ctx, group, PDF_NAME_I));
+ return pdf_to_bool(ctx, pdf_dict_get(ctx, group, PDF_NAME(I)));
return 0;
}
int pdf_xobject_knockout(fz_context *ctx, pdf_obj *xobj)
{
- pdf_obj *group = pdf_dict_get(ctx, xobj, PDF_NAME_Group);
+ pdf_obj *group = pdf_dict_get(ctx, xobj, PDF_NAME(Group));
if (group)
- return pdf_to_bool(ctx, pdf_dict_get(ctx, group, PDF_NAME_K));
+ return pdf_to_bool(ctx, pdf_dict_get(ctx, group, PDF_NAME(K)));
return 0;
}
int pdf_xobject_transparency(fz_context *ctx, pdf_obj *xobj)
{
- pdf_obj *group = pdf_dict_get(ctx, xobj, PDF_NAME_Group);
+ pdf_obj *group = pdf_dict_get(ctx, xobj, PDF_NAME(Group));
if (group)
- if (pdf_name_eq(ctx, pdf_dict_get(ctx, group, PDF_NAME_S), PDF_NAME_Transparency))
+ if (pdf_name_eq(ctx, pdf_dict_get(ctx, group, PDF_NAME(S)), PDF_NAME(Transparency)))
return 1;
return 0;
}
@@ -47,10 +47,10 @@ int pdf_xobject_transparency(fz_context *ctx, pdf_obj *xobj)
fz_colorspace *
pdf_xobject_colorspace(fz_context *ctx, pdf_obj *xobj)
{
- pdf_obj *group = pdf_dict_get(ctx, xobj, PDF_NAME_Group);
+ pdf_obj *group = pdf_dict_get(ctx, xobj, PDF_NAME(Group));
if (group)
{
- pdf_obj *cs = pdf_dict_get(ctx, group, PDF_NAME_CS);
+ pdf_obj *cs = pdf_dict_get(ctx, group, PDF_NAME(CS));
if (cs)
{
fz_colorspace *colorspace = NULL;
@@ -78,21 +78,21 @@ pdf_new_xobject(fz_context *ctx, pdf_document *doc, const fz_rect *bbox, const f
fz_try(ctx)
{
dict = pdf_new_dict(ctx, doc, 0);
- pdf_dict_put_rect(ctx, dict, PDF_NAME_BBox, bbox);
- pdf_dict_put_int(ctx, dict, PDF_NAME_FormType, 1);
- pdf_dict_put_int(ctx, dict, PDF_NAME_Length, 0);
- pdf_dict_put_matrix(ctx, dict, PDF_NAME_Matrix, mat);
+ pdf_dict_put_rect(ctx, dict, PDF_NAME(BBox), bbox);
+ pdf_dict_put_int(ctx, dict, PDF_NAME(FormType), 1);
+ pdf_dict_put_int(ctx, dict, PDF_NAME(Length), 0);
+ pdf_dict_put_matrix(ctx, dict, PDF_NAME(Matrix), mat);
res = pdf_new_dict(ctx, doc, 0);
- pdf_dict_put(ctx, dict, PDF_NAME_Resources, res);
+ pdf_dict_put(ctx, dict, PDF_NAME(Resources), res);
procset = pdf_new_array(ctx, doc, 2);
- pdf_dict_put_drop(ctx, res, PDF_NAME_ProcSet, procset);
- pdf_array_push(ctx, procset, PDF_NAME_PDF);
- pdf_array_push(ctx, procset, PDF_NAME_Text);
+ pdf_dict_put_drop(ctx, res, PDF_NAME(ProcSet), procset);
+ pdf_array_push(ctx, procset, PDF_NAME(PDF));
+ pdf_array_push(ctx, procset, PDF_NAME(Text));
- pdf_dict_put(ctx, dict, PDF_NAME_Subtype, PDF_NAME_Form);
- pdf_dict_put(ctx, dict, PDF_NAME_Type, PDF_NAME_XObject);
+ pdf_dict_put(ctx, dict, PDF_NAME(Subtype), PDF_NAME(Form));
+ pdf_dict_put(ctx, dict, PDF_NAME(Type), PDF_NAME(XObject));
form = pdf_add_object(ctx, doc, dict);
}