Lines Matching refs:pdfont

78     pdf_font_resource_t *pdfont = pbfs->open_font; /* Type 3 */  in assign_char_code()  local
84 if (pdfont == 0 || pdfont->u.simple.LastChar == 255 || in assign_char_code()
90 code = pdf_font_type3_alloc(pdev, &pdfont, pdf_write_contents_bitmap); in assign_char_code()
93 pdfont->u.simple.s.type3.bitmap_font = true; in assign_char_code()
95 pdfont->rname[0] = 0; in assign_char_code()
97 strcpy(pdfont->rname, pbfs->open_font->rname); in assign_char_code()
98 pdfont->u.simple.s.type3.FontBBox.p.x = 0; in assign_char_code()
99 pdfont->u.simple.s.type3.FontBBox.p.y = 0; in assign_char_code()
100 pdfont->u.simple.s.type3.FontBBox.q.x = 0; in assign_char_code()
101 pdfont->u.simple.s.type3.FontBBox.q.y = 0; in assign_char_code()
102 pdfont->mark_glyph = NULL; in assign_char_code()
103 gs_make_identity(&pdfont->u.simple.s.type3.FontMatrix); in assign_char_code()
108 for (pc = pdfont->rname; *pc == 'Z'; ++pc) in assign_char_code()
112 pbfs->open_font = pdfont; in assign_char_code()
114 pdfont->u.simple.FirstChar = 255; in assign_char_code()
121 if (pdfont->used[index] & bit) { in assign_char_code()
125 if (!(pdfont->used[index] & bit)) { in assign_char_code()
132 pdfont->used[index] |= bit; in assign_char_code()
133 if (c > pdfont->u.simple.LastChar) in assign_char_code()
134 pdfont->u.simple.LastChar = c; in assign_char_code()
138 c = ++(pdfont->u.simple.LastChar); in assign_char_code()
141 pdfont->used[index] |= bit; in assign_char_code()
143 if (c < pdfont->u.simple.FirstChar) in assign_char_code()
144 pdfont->u.simple.FirstChar = c; in assign_char_code()
146 pdfont->Widths[c] = psdf_round(pdev->char_width.x, 100, 10); /* See in assign_char_code()
157 pdf_write_contents_bitmap(gx_device_pdf *pdev, pdf_font_resource_t *pdfont) in pdf_write_contents_bitmap() argument
164 if (pdfont->u.simple.s.type3.bitmap_font) in pdf_write_contents_bitmap()
170 code = pdf_write_encoding_ref(pdev, pdfont, diff_id); in pdf_write_contents_bitmap()
175 for (pcpo = pdfont->u.simple.s.type3.char_procs; pcpo; in pdf_write_contents_bitmap()
178 if (pdfont->u.simple.s.type3.bitmap_font) in pdf_write_contents_bitmap()
188 (float)pdfont->u.simple.s.type3.FontMatrix.xx, in pdf_write_contents_bitmap()
189 (float)pdfont->u.simple.s.type3.FontMatrix.xy, in pdf_write_contents_bitmap()
190 (float)pdfont->u.simple.s.type3.FontMatrix.yx, in pdf_write_contents_bitmap()
191 (float)pdfont->u.simple.s.type3.FontMatrix.yy, in pdf_write_contents_bitmap()
192 (float)pdfont->u.simple.s.type3.FontMatrix.tx, in pdf_write_contents_bitmap()
193 (float)pdfont->u.simple.s.type3.FontMatrix.ty); in pdf_write_contents_bitmap()
194 code = pdf_finish_write_contents_type3(pdev, pdfont); in pdf_write_contents_bitmap()
198 if (!pdfont->u.simple.s.type3.bitmap_font && diff_id > 0) { in pdf_write_contents_bitmap()
199 code = pdf_write_encoding(pdev, pdfont, diff_id, 0); in pdf_write_contents_bitmap()
258 pdf_attach_charproc(gx_device_pdf * pdev, pdf_font_resource_t *pdfont, pdf_char_proc_t *pcp, in pdf_attach_charproc() argument
264 for (pcpo = pdfont->u.simple.s.type3.char_procs; pcpo != NULL; pcpo = pcpo->char_next) { in pdf_attach_charproc()
268 if (!pdfont->u.simple.s.type3.bitmap_font) { in pdf_attach_charproc()
269 for (pcpo = pdfont->u.simple.s.type3.char_procs; pcpo != NULL; pcpo = pcpo->char_next) { in pdf_attach_charproc()
281 pcpo->font = pdfont; in pdf_attach_charproc()
282 pcpo->char_next = pdfont->u.simple.s.type3.char_procs; in pdf_attach_charproc()
283 pdfont->u.simple.s.type3.char_procs = pcpo; in pdf_attach_charproc()
375 pdf_mark_glyph_names(const pdf_font_resource_t *pdfont, const gs_memory_t *memory) in pdf_mark_glyph_names() argument
377 if (pdfont->mark_glyph == NULL) { in pdf_mark_glyph_names()
381 if (pdfont->u.simple.Encoding != NULL) { in pdf_mark_glyph_names()
385 if (pdfont->u.simple.Encoding[i].glyph != GS_NO_GLYPH) in pdf_mark_glyph_names()
386 pdfont->mark_glyph(memory, pdfont->u.simple.Encoding[i].glyph, pdfont->mark_glyph_data); in pdf_mark_glyph_names()
388 if (pdfont->FontType == ft_user_defined) { in pdf_mark_glyph_names()
389 const pdf_char_proc_ownership_t *pcpo = pdfont->u.simple.s.type3.char_procs; in pdf_mark_glyph_names()
392 pdfont->mark_glyph(memory, pcpo->glyph, pdfont->mark_glyph_data); in pdf_mark_glyph_names()
405 pdf_font_resource_t *pdfont = pcpo->font; in pdf_do_char_image() local
410 values.pdfont = pdfont; in pdf_do_char_image()
416 pdf_append_chars(pdev, &ch, 1, pdfont->Widths[ch] * pimat->xx, 0.0, false); in pdf_do_char_image()
479 pdf_font_resource_t *pdfont; in pdf_set_charproc_attrs() local
484 code = pdf_attached_font_resource(pdev, font, &pdfont, NULL, NULL, NULL, NULL); in pdf_set_charproc_attrs()
505 pdfont->u.simple.s.type3.cached[ch >> 3] |= 0x80 >> (ch & 7); in pdf_set_charproc_attrs()
709 pdf_font_resource_t *pdfont; member
716 is_char_code_used(pdf_font_resource_t *pdfont, gs_char char_code) in is_char_code_used() argument
720 for (pcpo = pdfont->u.simple.s.type3.char_procs; pcpo != NULL; pcpo = pcpo->char_next) { in is_char_code_used()
734 pdf_font_resource_t *pdfont = data->pdfont; in pdf_is_charproc_compatible() local
744 if (pdfont == pcpo->font) { in pdf_is_charproc_compatible()
749 can_add_to_current_font = !is_char_code_used(pdfont, data->char_code); in pdf_is_charproc_compatible()
766 if (pdfont->u.simple.s.type3.bitmap_font != pcpo->font->u.simple.s.type3.bitmap_font) in pdf_is_charproc_compatible()
768 if (memcmp(&pdfont->u.simple.s.type3.FontMatrix, &pcpo->font->u.simple.s.type3.FontMatrix, in pdf_is_charproc_compatible()
769 sizeof(pdfont->u.simple.s.type3.FontMatrix))) in pdf_is_charproc_compatible()
775 if ((*e)->pdfont != pcpo->font) in pdf_is_charproc_compatible()
777 data->pdfont = pcpo->font; /* Switch to the other font. */ in pdf_is_charproc_compatible()
783 can_add_to_current_font = !is_char_code_used(pdfont, data->char_code); in pdf_is_charproc_compatible()
832 data.pdfont = *ppdfont; in pdf_find_same_charproc()
839 *ppdfont = data.pdfont; in pdf_find_same_charproc()
844 pdf_is_charproc_defined(gx_device_pdf *pdev, pdf_font_resource_t *pdfont, gs_char ch) in pdf_is_charproc_defined() argument
848 for (pcpo = pdfont->u.simple.s.type3.char_procs; pcpo != NULL; pcpo = pcpo->char_next) { in pdf_is_charproc_defined()
860 pdf_font_resource_t *pdfont; in complete_adding_char() local
867 code = pdf_attached_font_resource(pdev, font, &pdfont, in complete_adding_char()
871 code = pdf_attach_charproc(pdev, pdfont, pcp, glyph, ch, gnstr); in complete_adding_char()
876 pet = &pdfont->u.simple.Encoding[ch]; in complete_adding_char()
877 pdfont->Widths[ch] = pcp->real_width.x; in complete_adding_char()
881 pdfont->used[ch >> 3] |= 0x80 >> (ch & 7); in complete_adding_char()
882 if (pdfont->u.simple.v != NULL && font->WMode) { in complete_adding_char()
883 pdfont->u.simple.v[ch].x = pcp->v.x; in complete_adding_char()
884 pdfont->u.simple.v[ch].y = pcp->v.x; in complete_adding_char()
889 if (pdfont->u.simple.LastChar < (int)ch) in complete_adding_char()
890 pdfont->u.simple.LastChar = (int)ch; in complete_adding_char()
891 if (pdfont->u.simple.FirstChar > (int)ch) in complete_adding_char()
892 pdfont->u.simple.FirstChar = (int)ch; in complete_adding_char()
899 pdf_font_resource_t *pdfont; in pdf_char_widths_from_charprocs() local
906 code = pdf_attached_font_resource(pdev, font, &pdfont, in pdf_char_widths_from_charprocs()
910 for (pcpo = pdfont->u.simple.s.type3.char_procs; pcpo != NULL; pcpo = pcpo->char_next) { in pdf_char_widths_from_charprocs()
935 pdf_font_resource_t *pdfont; in pdf_end_charproc_accum() local
943 code = pdf_attached_font_resource(pdev, font, &pdfont, NULL, NULL, NULL, NULL); in pdf_end_charproc_accum()
946 if (pdfont != (pdf_font_resource_t *)pdev->font3) in pdf_end_charproc_accum()
951 if (!(pdfont->used[ch >> 3] & (0x80 >> (ch & 7))) || in pdf_end_charproc_accum()
952 !(pdfont->u.simple.s.type3.cached[ch >> 3] & (0x80 >> (ch & 7)))) { in pdf_end_charproc_accum()
954 pdf_font_resource_t *pdfont1 = pdfont; in pdf_end_charproc_accum()
958 code = pdf_find_same_charproc(pdev, &pdfont, cgp, &pcp, glyph, ch, font); in pdf_end_charproc_accum()
966 if (pdfont1 != pdfont) { in pdf_end_charproc_accum()
967 code = pdf_attach_font_resource(pdev, font, pdfont); in pdf_end_charproc_accum()
977 if (pdf_is_charproc_defined(pdev, pdfont, ch)) { in pdf_end_charproc_accum()
984 code = pdf_make_font3_resource(pdev, base_font, &pdfont); in pdf_end_charproc_accum()
987 code = pdf_attach_font_resource(pdev, font, pdfont); in pdf_end_charproc_accum()