X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=backend%2Fdvi%2Fcairo-device.c;h=47425cad7e0be21a503a449c8fff618f525c35bb;hb=9f258bd6009e1ae92579cf159d81ad8c28280666;hp=992728dc4c4b49b012b8a2278840f876d864c5f9;hpb=df7ffac1abb2328b91bb87306f6e77807cc4e10d;p=evince.git diff --git a/backend/dvi/cairo-device.c b/backend/dvi/cairo-device.c index 992728dc..47425cad 100644 --- a/backend/dvi/cairo-device.c +++ b/backend/dvi/cairo-device.c @@ -13,13 +13,13 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #include #include -#include +#include #ifdef HAVE_SPECTRE #include #endif @@ -55,7 +55,9 @@ dvi_cairo_draw_glyph (DviContext *dvi, glyph = &ch->grey; - isbox = (glyph->data == NULL || (dvi->params.flags & MDVI_PARAM_CHARBOXES)); + isbox = (glyph->data == NULL || + (dvi->params.flags & MDVI_PARAM_CHARBOXES) || + MDVI_GLYPH_ISEMPTY (glyph->data)); x = - glyph->x + x0 + cairo_device->xmargin; y = - glyph->y + y0 + cairo_device->ymargin; @@ -247,16 +249,14 @@ dvi_cairo_put_pixel (void *image, int x, int y, Ulong color) { cairo_surface_t *surface; gint rowstride; - guchar *p; + guint32 *p; surface = (cairo_surface_t *) image; rowstride = cairo_image_surface_get_stride (surface); - p = cairo_image_surface_get_data (surface) + y * rowstride + x * 4; + p = (guint32*) (cairo_image_surface_get_data (surface) + y * rowstride + x * 4); - p[2] = (color >> 16) & 0xff; - p[1] = (color >> 8) & 0xff; - p[0] = (color >> 0) & 0xff; + *p = color; } static void