undef_int
-i_t1_cp(font,im,xb,yb,channel,points,str_sv, length(str),align,utf8=0,flags="",aa=1)
+i_t1_cp(font,im,xb,yb,channel,points,str_sv,align,utf8=0,flags="",aa=1)
Imager::Font::T1xs font
Imager::ImgRaw im
i_img_dim xb
char *str;
STRLEN len;
CODE:
+ str = SvPV(str_sv, len);
#ifdef SvUTF8
if (SvUTF8(str_sv))
utf8 = 1;
#endif
- str = SvPV(str_sv, len);
RETVAL = i_t1_cp(font, im, xb,yb,channel,points,str,len,align,
utf8,flags,aa);
OUTPUT:
void
-i_t1_bbox(fontnum,point,str_sv,len_ignored,utf8=0,flags="")
+i_t1_bbox(fontnum,point,str_sv,utf8=0,flags="")
Imager::Font::T1xs fontnum
double point
SV* str_sv
int utf8
char* flags
PREINIT:
- char *str;
+ const char *str;
STRLEN len;
i_img_dim cords[BOUNDING_BOX_COUNT];
int i;
int rc;
PPCODE:
+ str = SvPV(str_sv, len);
#ifdef SvUTF8
if (SvUTF8(str_sv))
utf8 = 1;
#endif
- str = SvPV(str_sv, len);
rc = i_t1_bbox(fontnum,point,str,len,cords,utf8,flags);
if (rc > 0) {
EXTEND(SP, rc);
undef_int
-i_t1_text(font,im,xb,yb,cl,points,str_sv,length(str),align,utf8=0,flags="",aa=1)
+i_t1_text(font,im,xb,yb,cl,points,str_sv,align,utf8=0,flags="",aa=1)
Imager::Font::T1xs font
Imager::ImgRaw im
i_img_dim xb
char *str;
STRLEN len;
CODE:
+ str = SvPV(str_sv, len);
#ifdef SvUTF8
if (SvUTF8(str_sv))
utf8 = 1;
#endif
- str = SvPV(str_sv, len);
RETVAL = i_t1_text(font,im, xb,yb,cl,points,str,len,align,
utf8,flags,aa);
OUTPUT:
int count;
int i;
PPCODE:
+ text = SvPV(text_sv, len);
#ifdef SvUTF8
if (SvUTF8(text_sv))
utf8 = 1;
#endif
- text = SvPV(text_sv, len);
work = mymalloc(len);
count = i_t1_has_chars(font, text, len, utf8, work);
if (GIMME_V == G_ARRAY) {
}
void
-i_t1_glyph_name(font, text_sv, utf8 = 0)
+i_t1_glyph_names(font, text_sv, utf8 = 0)
Imager::Font::T1xs font
SV *text_sv
int utf8
STRLEN work_len;
size_t len;
char name[255];
+ SSize_t count = 0;
PPCODE:
+ text = SvPV(text_sv, work_len);
#ifdef SvUTF8
if (SvUTF8(text_sv))
utf8 = 1;
#endif
- text = SvPV(text_sv, work_len);
+ i_clear_error();
len = work_len;
while (len) {
unsigned long ch;
ch = i_utf8_advance(&text, &len);
if (ch == ~0UL) {
i_push_error(0, "invalid UTF8 character");
- break;
+ XSRETURN(0);
}
}
else {
}
else {
PUSHs(&PL_sv_undef);
- }
+ }
}
int
BOOT:
PERL_INITIALIZE_IMAGER_CALLBACKS;
- i_t1_start();
\ No newline at end of file
+ i_t1_start();