Это мой первый ответ, так что, надеюсь, я не буду слишком сильно биться.Поскольку никто больше не ответил на это, и я потратил немного времени на это сегодня, я подумал, что предоставлю некоторый код.
Основная причина, по которой это заняло у меня слишком много времени, заключается в том, что по какой-то причине,моделирование devserver API изображений работает неправильно, а составные изображения некорректны при использовании devserver.Я тратил целую вечность, манипулируя значениями в devserver, пока просто не загрузил тестовый код в AppEngine, и он заработал, как и ожидалось.Argg!
В любом случае, приведенный ниже код предполагает, что у вас есть два изображения размером 300x300, одно в aImage, а другое в bImage, которые вы хотите вставить бок о бок в новый холст 600x300, который создается в результате.Image newImage:
List<Composite> listComposites=new ArrayList<Composite>();
Composite aPaste = ImagesServiceFactory.makeComposite(aImage, 0, 0, 1f, Composite.Anchor.TOP_LEFT);
listComposites.add( aPaste );
Composite bPaste = ImagesServiceFactory.makeComposite(bImage, 300, 0, 1f, Composite.Anchor.TOP_LEFT);
listComposites.add( bPaste );
Image newImage = imagesService.composite(listComposites, 600, 300, 0xff333333L, ImagesService.OutputEncoding.JPEG);
Первый makeComposite помещает первое изображение в позицию 0,0 относительно TOP_LEFT.Второй makeComposite помещает второе изображение на 300,0.Оба наклеены с непрозрачностью 1,0.Надеюсь это поможет.Этот код сохраняет результат в формате JPEG.И, опять же, для меня это НЕ РАБОТАЕТ в devserver, но работает, как и ожидалось, на реальной платформе App Engine.