我正在使用 java 和 vaadin 14 作为网络框架。 在vaadin中,我正在使用 Vaadin Uploader 组件从Android手机上的相机或图片库上传图像。 当我从图库中选择图像时,它将被上传并正常显示。但是,当我尝试从特定设备(三星)的手机摄像头上传图像时,上传的图像会自动旋转。这意味着,如果以横向拍摄,则上传的图像以纵向显示,如果以纵向拍摄,则显示为横向。该怎么解决?
注意:并非在所有android设备上都发生。仅在三星s7等三星android设备中。
这是我的代码-
import com.vaadin.flow.component.upload.SucceededEvent;
import com.vaadin.flow.component.upload.Upload;
private void fileUploaderInit() {
uploader = new Upload(buffer);
uploader.setMaxFiles(1);
uploader.setDropAllowed(false);
uploader.setacceptedFileTypes("image/*");
uploader.getElement().removeProperty("capture");
uploader.setUploadButton(image);
uploader.addSucceededListener(event -> {
succeedEvent = event;
saveUploadedImage();
setUserImage();
});
uploader.getElement().addEventListener("file-abort",remove -> {
succeedEvent = null;
});
uploadLayout.add(uploader);
}
private void saveUploadedImage() {
if (succeedEvent != null && userEntity != null) {
addData();
succeedEvent = null;
Notification.show("Image saved successfully.",2000,Position.MIDDLE);
userEvent.fire(new UserEvent(userEntity,false));
}
uploader.getElement().setPropertyJson("files",Json.createArray());
}