I am evaluating imagesService.applyTransform() to transform images(from URL) 
to specific width/height.
It's documented that PNG is supported. But it seems it doesn't understand 
some PNG file.
for example :
http://destinyfab.appspot.com/resizer/resize?url=http://www.google.com.tw/intl/en_com/images/srpr/logo1w.png&w=500&h=500
It works well , and can transform google's logo to 500x500.

BUT , this PNG :
http://destinyfab.appspot.com/resizer/resize?url=http://upload.wikimedia.org/wikipedia/commons/a/ac/Fairytale_firefox.png&w=500&h=500


An error occurred , with this stacktrace :

Caused by: java.lang.IllegalArgumentException: Unknown
        at 
com.google.appengine.api.images.ImagesServiceImpl.convertApplicationException(ImagesServiceImpl.java:306)
        at 
com.google.appengine.api.images.ImagesServiceImpl.applyTransform(ImagesServiceImpl.java:73)
        at 
com.google.appengine.api.images.ImagesServiceImpl.applyTransform(ImagesServiceImpl.java:50)
        at 
com.google.appengine.api.images.ImagesServiceImpl.applyTransform(ImagesServiceImpl.java:39)
        at controllers.Resizer.resize(Resizer.java:72)


I tried some PNGs , and many transparent PNG cannot be transformed . Is this 
GAE's limitation ?

The code is very simple , just grab the url's content , transform to byte[].


        byte[] imageBytes = baos.toByteArray();
        Logger.info("imageBytes.length = %s " , imageBytes.length);
        
        ImagesService imagesService = ImagesServiceFactory.getImagesService();
        
        Image oldImage = ImagesServiceFactory.makeImage(imageBytes);
        Transform transform = ImagesServiceFactory.makeResize(w, h);        
        Image newImage = imagesService.applyTransform(transform, oldImage); 
//error occurs 
        byte[] newImageData = newImage.getImageData();


-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to google-appengine-java@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.

Reply via email to