Использование gdk_pixbuf_composite

У меня есть два изображения в формате png. Первое с шириной 1 2247, высотой 1 190, а второе с шириной 2 155, высотой 2 36. Я не хочу, чтобы второе изображение (источник) помещалось в центр первого изображения (назначения). Я создал пиксельную буферизацию обоих и использовал gdk_pixbuf_composite следующим образом.

gdk_pixbuf_composite( srcpixbuf, dstpixbuf, 1000, 100, width2, height2, 0, 0, 1, 1, GDK_INTERP_BILINEAR, 255);

Я получаю туманное окно шириной2 и высотой2 на первом изображении.

Если я заменю width2 и height2 на 1.0, я не получу srcimage на dstimage. Где я ошибаюсь?


person bluegenetic    schedule 09.02.2010    source источник


Ответы (1)


gdk_pixbuf_composite(srcpixbuf, dstpixbuf, 1000, 100, ширина2, высота2, 1000, 100, 1, 1, GDK_INTERP_BILINEAR, 255);

Это решено. Неверно понял параметр смещения. В основном создается промежуточное масштабированное изображение, и компонуется только часть, представленная целевым значением ширины и высоты. Итак, в моем случае нам нужно переместить все немасштабированное изображение в целевое смещение, которое выполняется параметром смещения.

person bluegenetic    schedule 09.02.2010