@halloleooo please, try this one in the share sheet
import appex
import ui
import io
from PIL import Image
def pil2ui(imgIn):
with io.BytesIO() as bIO:
imgIn.save(bIO, 'PNG')
imgOut = ui.Image.from_data(bIO.getvalue())
del bIO
return imgOut
ui_images = []
# assume two images are shared
files = appex.get_attachments()
for f in files:
pil = Image.open(f)#,mode='r')
ui_image = pil2ui(pil)
del pil
w,h = ui_image.size
wi = 400
hi = wi*h/w
with ui.ImageContext(wi,hi) as ctx:
ui_image.draw(0,0,wi,hi)
del ui_image
ui_resize = ctx.get_image()
ui_images.append(ui_resize)
del ui_resize
w1,h1 = ui_images[0].size
w2,h2 = ui_images[1].size
# assume images have same height
with ui.ImageContext(w1+w2,h1) as ctx:
ui_images[0].draw(0,0,w1,h1)
ui_images[1].draw(w1,0,w2,h2)
ui_image_joined = ctx.get_image()
w,h = ui_image_joined.size
v = ui.ImageView()
v.frame = (0,0,400,400*h/w)
v.content_mode = ui.CONTENT_SCALE_ASPECT_FIT
v.image = ui_image_joined
v.present('')