mirror of
https://github.com/python-pillow/Pillow.git
synced 2024-12-25 17:36:18 +03:00
DRYing out the code
This commit is contained in:
parent
f4f3ed744b
commit
0b9e404761
17
_imagingft.c
17
_imagingft.c
|
@ -349,12 +349,13 @@ font_render(FontObject* self, PyObject* args)
|
|||
&delta);
|
||||
x += delta.x >> 6;
|
||||
}
|
||||
|
||||
error = FT_Load_Glyph(self->face, index, load_flags);
|
||||
if (error)
|
||||
return geterror(error);
|
||||
|
||||
glyph = self->face->glyph;
|
||||
if (mask) {
|
||||
/* use monochrome mask (on palette images, etc) */
|
||||
|
||||
int xx, x0, x1;
|
||||
source = (unsigned char*) glyph->bitmap.buffer;
|
||||
xx = x + glyph->bitmap_left;
|
||||
|
@ -364,6 +365,9 @@ font_render(FontObject* self, PyObject* args)
|
|||
x0 = -xx;
|
||||
if (xx + x1 > im->xsize)
|
||||
x1 = im->xsize - xx;
|
||||
|
||||
if (mask) {
|
||||
/* use monochrome mask (on palette images, etc) */
|
||||
for (y = 0; y < glyph->bitmap.rows; y++) {
|
||||
int yy = y + im->ysize - (PIXEL(glyph->metrics.horiBearingY) + ascender);
|
||||
if (yy >= 0 && yy < im->ysize) {
|
||||
|
@ -383,15 +387,6 @@ font_render(FontObject* self, PyObject* args)
|
|||
}
|
||||
} else {
|
||||
/* use antialiased rendering */
|
||||
int xx, x0, x1;
|
||||
source = (unsigned char*) glyph->bitmap.buffer;
|
||||
xx = x + glyph->bitmap_left;
|
||||
x0 = 0;
|
||||
x1 = glyph->bitmap.width;
|
||||
if (xx < 0)
|
||||
x0 = -xx;
|
||||
if (xx + x1 > im->xsize)
|
||||
x1 = im->xsize - xx;
|
||||
for (y = 0; y < glyph->bitmap.rows; y++) {
|
||||
int yy = y + im->ysize - (PIXEL(glyph->metrics.horiBearingY) + ascender);
|
||||
if (yy >= 0 && yy < im->ysize) {
|
||||
|
|
Loading…
Reference in New Issue
Block a user