summaryrefslogtreecommitdiff
path: root/source/pdf/pdf-annot.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/pdf/pdf-annot.c')
-rw-r--r--source/pdf/pdf-annot.c120
1 files changed, 60 insertions, 60 deletions
diff --git a/source/pdf/pdf-annot.c b/source/pdf/pdf-annot.c
index 79114211..50c637d2 100644
--- a/source/pdf/pdf-annot.c
+++ b/source/pdf/pdf-annot.c
@@ -24,7 +24,7 @@ resolve_dest_rec(fz_context *ctx, pdf_document *doc, pdf_obj *dest, fz_link_kind
else if (pdf_is_dict(ctx, dest))
{
- dest = pdf_dict_gets(ctx, dest, "D");
+ dest = pdf_dict_get(ctx, dest, PDF_NAME_D);
return resolve_dest_rec(ctx, doc, dest, kind, depth+1);
}
@@ -101,27 +101,27 @@ pdf_parse_link_dest(fz_context *ctx, pdf_document *doc, fz_link_kind kind, pdf_o
if (!pdf_is_name(ctx, obj))
return ld;
- if (!strcmp("XYZ", pdf_to_name(ctx, obj)))
+ if (pdf_name_eq(ctx, PDF_NAME_XYZ, obj))
{
l_from_2 = t_from_3 = z_from_4 = 1;
ld.ld.gotor.flags |= fz_link_flag_r_is_zoom;
}
- else if ((!strcmp("Fit", pdf_to_name(ctx, obj))) || (!strcmp("FitB", pdf_to_name(ctx, obj))))
+ else if ((pdf_name_eq(ctx, PDF_NAME_Fit, obj)) || (pdf_name_eq(ctx, PDF_NAME_FitB, obj)))
{
ld.ld.gotor.flags |= fz_link_flag_fit_h;
ld.ld.gotor.flags |= fz_link_flag_fit_v;
}
- else if ((!strcmp("FitH", pdf_to_name(ctx, obj))) || (!strcmp("FitBH", pdf_to_name(ctx, obj))))
+ else if ((pdf_name_eq(ctx, PDF_NAME_FitH, obj)) || (pdf_name_eq(ctx, PDF_NAME_FitBH, obj)))
{
t_from_2 = 1;
ld.ld.gotor.flags |= fz_link_flag_fit_h;
}
- else if ((!strcmp("FitV", pdf_to_name(ctx, obj))) || (!strcmp("FitBV", pdf_to_name(ctx, obj))))
+ else if ((pdf_name_eq(ctx, PDF_NAME_FitV, obj)) || (pdf_name_eq(ctx, PDF_NAME_FitBV, obj)))
{
l_from_2 = 1;
ld.ld.gotor.flags |= fz_link_flag_fit_v;
}
- else if (!strcmp("FitR", pdf_to_name(ctx, obj)))
+ else if (pdf_name_eq(ctx, PDF_NAME_FitR, obj))
{
l_from_2 = b_from_3 = r_from_4 = t_from_5 = 1;
ld.ld.gotor.flags |= fz_link_flag_fit_h;
@@ -228,12 +228,12 @@ pdf_parse_file_spec(fz_context *ctx, pdf_document *doc, pdf_obj *file_spec)
if (pdf_is_dict(ctx, file_spec)) {
#if defined(_WIN32) || defined(_WIN64)
- filename = pdf_dict_gets(ctx, file_spec, "DOS");
+ filename = pdf_dict_get(ctx, file_spec, PDF_NAME_DOS);
#else
- filename = pdf_dict_gets(ctx, file_spec, "Unix");
+ filename = pdf_dict_get(ctx, file_spec, PDF_NAME_Unix);
#endif
if (!filename)
- filename = pdf_dict_getsa(ctx, file_spec, "UF", "F");
+ filename = pdf_dict_geta(ctx, file_spec, PDF_NAME_UF, PDF_NAME_F);
}
if (!pdf_is_string(ctx, filename))
@@ -274,38 +274,38 @@ pdf_parse_action(fz_context *ctx, pdf_document *doc, pdf_obj *action)
if (!action)
return ld;
- obj = pdf_dict_gets(ctx, action, "S");
- if (!strcmp(pdf_to_name(ctx, obj), "GoTo"))
+ obj = pdf_dict_get(ctx, action, PDF_NAME_S);
+ if (pdf_name_eq(ctx, PDF_NAME_GoTo, obj))
{
- dest = pdf_dict_gets(ctx, action, "D");
+ dest = pdf_dict_get(ctx, action, PDF_NAME_D);
ld = pdf_parse_link_dest(ctx, doc, FZ_LINK_GOTO, dest);
}
- else if (!strcmp(pdf_to_name(ctx, obj), "URI"))
+ else if (pdf_name_eq(ctx, PDF_NAME_URI, obj))
{
ld.kind = FZ_LINK_URI;
- ld.ld.uri.is_map = pdf_to_bool(ctx, pdf_dict_gets(ctx, action, "IsMap"));
- ld.ld.uri.uri = pdf_to_utf8(ctx, doc, pdf_dict_gets(ctx, action, "URI"));
+ ld.ld.uri.is_map = pdf_to_bool(ctx, pdf_dict_get(ctx, action, PDF_NAME_IsMap));
+ ld.ld.uri.uri = pdf_to_utf8(ctx, doc, pdf_dict_get(ctx, action, PDF_NAME_URI));
}
- else if (!strcmp(pdf_to_name(ctx, obj), "Launch"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Launch, obj))
{
ld.kind = FZ_LINK_LAUNCH;
- file_spec = pdf_dict_gets(ctx, action, "F");
+ file_spec = pdf_dict_get(ctx, action, PDF_NAME_F);
ld.ld.launch.file_spec = pdf_parse_file_spec(ctx, doc, file_spec);
- ld.ld.launch.new_window = pdf_to_int(ctx, pdf_dict_gets(ctx, action, "NewWindow"));
- ld.ld.launch.is_uri = !strcmp(pdf_to_name(ctx, pdf_dict_gets(ctx, file_spec, "FS")), "URL");
+ ld.ld.launch.new_window = pdf_to_int(ctx, pdf_dict_get(ctx, action, PDF_NAME_NewWindow));
+ ld.ld.launch.is_uri = pdf_name_eq(ctx, PDF_NAME_URL, pdf_dict_get(ctx, file_spec, PDF_NAME_FS));
}
- else if (!strcmp(pdf_to_name(ctx, obj), "Named"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Named, obj))
{
ld.kind = FZ_LINK_NAMED;
- ld.ld.named.named = fz_strdup(ctx, pdf_to_name(ctx, pdf_dict_gets(ctx, action, "N")));
+ ld.ld.named.named = fz_strdup(ctx, pdf_to_name(ctx, pdf_dict_get(ctx, action, PDF_NAME_N)));
}
- else if (!strcmp(pdf_to_name(ctx, obj), "GoToR"))
+ else if (pdf_name_eq(ctx, PDF_NAME_GoToR, obj))
{
- dest = pdf_dict_gets(ctx, action, "D");
- file_spec = pdf_dict_gets(ctx, action, "F");
+ dest = pdf_dict_get(ctx, action, PDF_NAME_D);
+ file_spec = pdf_dict_get(ctx, action, PDF_NAME_F);
ld = pdf_parse_link_dest(ctx, doc, FZ_LINK_GOTOR, dest);
ld.ld.gotor.file_spec = pdf_parse_file_spec(ctx, doc, file_spec);
- ld.ld.gotor.new_window = pdf_to_int(ctx, pdf_dict_gets(ctx, action, "NewWindow"));
+ ld.ld.gotor.new_window = pdf_to_int(ctx, pdf_dict_get(ctx, action, PDF_NAME_NewWindow));
}
return ld;
}
@@ -318,7 +318,7 @@ pdf_load_link(fz_context *ctx, pdf_document *doc, pdf_obj *dict, const fz_matrix
fz_rect bbox;
fz_link_dest ld;
- obj = pdf_dict_gets(ctx, dict, "Rect");
+ obj = pdf_dict_get(ctx, dict, PDF_NAME_Rect);
if (obj)
pdf_to_rect(ctx, obj, &bbox);
else
@@ -326,15 +326,15 @@ pdf_load_link(fz_context *ctx, pdf_document *doc, pdf_obj *dict, const fz_matrix
fz_transform_rect(&bbox, page_ctm);
- obj = pdf_dict_gets(ctx, dict, "Dest");
+ obj = pdf_dict_get(ctx, dict, PDF_NAME_Dest);
if (obj)
ld = pdf_parse_link_dest(ctx, doc, FZ_LINK_GOTO, obj);
else
{
- action = pdf_dict_gets(ctx, dict, "A");
+ action = pdf_dict_get(ctx, dict, PDF_NAME_A);
/* fall back to additional action button's down/up action */
if (!action)
- action = pdf_dict_getsa(ctx, pdf_dict_gets(ctx, dict, "AA"), "U", "D");
+ action = pdf_dict_geta(ctx, pdf_dict_get(ctx, dict, PDF_NAME_AA), PDF_NAME_U, PDF_NAME_D);
ld = pdf_parse_action(ctx, doc, action);
}
@@ -423,56 +423,56 @@ pdf_transform_annot(fz_context *ctx, pdf_annot *annot)
fz_annot_type pdf_annot_obj_type(fz_context *ctx, pdf_obj *obj)
{
- char *subtype = pdf_to_name(ctx, pdf_dict_gets(ctx, obj, "Subtype"));
- if (!strcmp(subtype, "Text"))
+ pdf_obj *subtype = pdf_dict_get(ctx, obj, PDF_NAME_Subtype);
+ if (pdf_name_eq(ctx, PDF_NAME_Text, subtype))
return FZ_ANNOT_TEXT;
- else if (!strcmp(subtype, "Link"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Link, subtype))
return FZ_ANNOT_LINK;
- else if (!strcmp(subtype, "FreeText"))
+ else if (pdf_name_eq(ctx, PDF_NAME_FreeText, subtype))
return FZ_ANNOT_FREETEXT;
- else if (!strcmp(subtype, "Line"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Line, subtype))
return FZ_ANNOT_LINE;
- else if (!strcmp(subtype, "Square"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Square, subtype))
return FZ_ANNOT_SQUARE;
- else if (!strcmp(subtype, "Circle"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Circle, subtype))
return FZ_ANNOT_CIRCLE;
- else if (!strcmp(subtype, "Polygon"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Polygon, subtype))
return FZ_ANNOT_POLYGON;
- else if (!strcmp(subtype, "PolyLine"))
+ else if (pdf_name_eq(ctx, PDF_NAME_PolyLine, subtype))
return FZ_ANNOT_POLYLINE;
- else if (!strcmp(subtype, "Highlight"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Highlight, subtype))
return FZ_ANNOT_HIGHLIGHT;
- else if (!strcmp(subtype, "Underline"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Underline, subtype))
return FZ_ANNOT_UNDERLINE;
- else if (!strcmp(subtype, "Squiggly"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Squiggly, subtype))
return FZ_ANNOT_SQUIGGLY;
- else if (!strcmp(subtype, "StrikeOut"))
+ else if (pdf_name_eq(ctx, PDF_NAME_StrikeOut, subtype))
return FZ_ANNOT_STRIKEOUT;
- else if (!strcmp(subtype, "Stamp"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Stamp, subtype))
return FZ_ANNOT_STAMP;
- else if (!strcmp(subtype, "Caret"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Caret, subtype))
return FZ_ANNOT_CARET;
- else if (!strcmp(subtype, "Ink"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Ink, subtype))
return FZ_ANNOT_INK;
- else if (!strcmp(subtype, "Popup"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Popup, subtype))
return FZ_ANNOT_POPUP;
- else if (!strcmp(subtype, "FileAttachment"))
+ else if (pdf_name_eq(ctx, PDF_NAME_FileAttachment, subtype))
return FZ_ANNOT_FILEATTACHMENT;
- else if (!strcmp(subtype, "Sound"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Sound, subtype))
return FZ_ANNOT_SOUND;
- else if (!strcmp(subtype, "Movie"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Movie, subtype))
return FZ_ANNOT_MOVIE;
- else if (!strcmp(subtype, "Widget"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Widget, subtype))
return FZ_ANNOT_WIDGET;
- else if (!strcmp(subtype, "Screen"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Screen, subtype))
return FZ_ANNOT_SCREEN;
- else if (!strcmp(subtype, "PrinterMark"))
+ else if (pdf_name_eq(ctx, PDF_NAME_PrinterMark, subtype))
return FZ_ANNOT_PRINTERMARK;
- else if (!strcmp(subtype, "TrapNet"))
+ else if (pdf_name_eq(ctx, PDF_NAME_TrapNet, subtype))
return FZ_ANNOT_TRAPNET;
- else if (!strcmp(subtype, "Watermark"))
+ else if (pdf_name_eq(ctx, PDF_NAME_Watermark, subtype))
return FZ_ANNOT_WATERMARK;
- else if (!strcmp(subtype, "3D"))
+ else if (pdf_name_eq(ctx, PDF_NAME_3D, subtype))
return FZ_ANNOT_3D;
else
return -1;
@@ -538,9 +538,9 @@ pdf_load_annots(fz_context *ctx, pdf_document *doc, pdf_page *page, pdf_obj *ann
doc->update_appearance(ctx, doc, annot);
obj = annot->obj;
- rect = pdf_dict_gets(ctx, obj, "Rect");
- ap = pdf_dict_gets(ctx, obj, "AP");
- as = pdf_dict_gets(ctx, obj, "AS");
+ rect = pdf_dict_get(ctx, obj, PDF_NAME_Rect);
+ ap = pdf_dict_get(ctx, obj, PDF_NAME_AP);
+ as = pdf_dict_get(ctx, obj, PDF_NAME_AS);
/* We only collect annotations with an appearance
* stream into this list, so remove any that don't
@@ -553,11 +553,11 @@ pdf_load_annots(fz_context *ctx, pdf_document *doc, pdf_page *page, pdf_obj *ann
&& hp->gen == pdf_to_gen(ctx, obj)
&& (hp->state & HOTSPOT_POINTER_DOWN))
{
- n = pdf_dict_gets(ctx, ap, "D"); /* down state */
+ n = pdf_dict_get(ctx, ap, PDF_NAME_D); /* down state */
}
if (n == NULL)
- n = pdf_dict_gets(ctx, ap, "N"); /* normal state */
+ n = pdf_dict_get(ctx, ap, PDF_NAME_N); /* normal state */
/* lookup current state in sub-dictionary */
if (!pdf_is_stream(ctx, doc, pdf_to_num(ctx, n), pdf_to_gen(ctx, n)))