diff options
author | Tor Andersson <tor.andersson@artifex.com> | 2018-01-09 16:54:09 +0100 |
---|---|---|
committer | Tor Andersson <tor.andersson@artifex.com> | 2018-01-10 16:06:17 +0100 |
commit | bec33a470ea600599d3ad9df472b815e7b46e824 (patch) | |
tree | 427f1a799d973a541e122c78207aaf76a7a98141 /source/pdf/pdf-device.c | |
parent | b70eb93f6936c03d8af52040bbca4d4a7db39079 (diff) | |
download | mupdf-bec33a470ea600599d3ad9df472b815e7b46e824.tar.xz |
Add colorspace type enum and use it instead of hardcoded checks on N.
Diffstat (limited to 'source/pdf/pdf-device.c')
-rw-r--r-- | source/pdf/pdf-device.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/source/pdf/pdf-device.c b/source/pdf/pdf-device.c index 314dc85e..c45dda40 100644 --- a/source/pdf/pdf-device.c +++ b/source/pdf/pdf-device.c @@ -567,19 +567,24 @@ pdf_dev_new_form(fz_context *ctx, pdf_obj **form_ref, pdf_device *pdev, const fz group = pdf_new_dict(ctx, doc, 5); fz_try(ctx) { - int n = fz_colorspace_n(ctx, colorspace); pdf_dict_put_drop(ctx, group, PDF_NAME_Type, PDF_NAME_Group); pdf_dict_put_drop(ctx, group, PDF_NAME_S, PDF_NAME_Transparency); pdf_dict_put_drop(ctx, group, PDF_NAME_K, pdf_new_bool(ctx, doc, knockout)); pdf_dict_put_drop(ctx, group, PDF_NAME_I, pdf_new_bool(ctx, doc, isolated)); - if (n == 0) - {} - if (n == 1) + switch (fz_colorspace_type(ctx, colorspace)) + { + case FZ_COLORSPACE_GRAY: pdf_dict_put_drop(ctx, group, PDF_NAME_CS, PDF_NAME_DeviceGray); - else if (n == 4) - pdf_dict_put_drop(ctx, group, PDF_NAME_CS, PDF_NAME_DeviceCMYK); - else + break; + case FZ_COLORSPACE_RGB: pdf_dict_put_drop(ctx, group, PDF_NAME_CS, PDF_NAME_DeviceRGB); + break; + case FZ_COLORSPACE_CMYK: + pdf_dict_put_drop(ctx, group, PDF_NAME_CS, PDF_NAME_DeviceCMYK); + break; + default: + break; + } group_ref = pdev->groups[num].ref = pdf_add_object(ctx, doc, group); } fz_always(ctx) |