Skip to main content
Question

QuickBase really needs to build EXIF image orientation awareness into its image handling...

  • August 27, 2018
  • 0 replies
  • 205 views

Forum|alt.badge.img+7
This is more of a wish/rant than a question (unless someone has a super secret way of remedying this that I'm not aware of).

For a platform that touts its mobile-friendliness, I find it very lackluster that photos that are taken/uploaded from a mobile device in portrait orientation are not handled properly by Quickbase.  The mobile interface will show that photo using the correct orientation (because the mobile browser natively obeys the EXIF orientation tag), so the mobile user thinks all is well... meanwhile the full desktop interface will show the photo rotated incorrectly, and any corresponding reports will output the image incorrectly.

Yes, I do know that the photos can be rotated manually before upload, or during/after upload by using a script or simply adding a "style/rotate" attribute in the <img> tag of your formula, however this doesn't solve the problem...it simply makes it look correct on one platform and not the other.  I even experimented with adding a "rotate" checkbox so users could individually rotate/correct each uploaded image, but again, that will fix the way the desktop browser handles it, and then it will look incorrect on mobile. The only true solution for images appearing correctly on both platforms would seem to be QuickBase handling the EXIF rotation tags in the background.  

Or am I missing something...?
This topic has been closed for replies.

  • Registered
  • August 28, 2018
Using JavaScript you can read the EFIX rotation tag and automatically rotate the image.

If you need individual assistance implementing this feature fee free to contact me off-world using the information in my profile:

https://getsatisfaction.com/people/dandiebolt/

Forum|alt.badge.img+17
  • Community Moderator
  • August 28, 2018
Hi Josh,

It is the case that mobile and desktop display of images can be disjointed due to the way the mobile site handles them versus desktop orientation. The mobile experience of Quick Base is something we are working on, we are looking at a devoted Quick Base application in the early stages of development, beyond just the mobile browser experience. I would suggest adding your feedback as a request on our User Voice platform as well. The Quick Base User voice can most easily be accessed from the My Apps page in Quick Base by clicking on the orange Feedback tab that appears on the right of the page or at http://quickbase.uservoice.com by signing in with your Quick Base credentials. Our Product Development team users User Voice as a tool for planning to gauge customer interest. I would suggest if you do make a User Voice request that you post a link to it here in the Community as well. That way other users who share your need can add their votes. I'm sorry that you ran into this issue.

Forum|alt.badge.img+7
  • Author
  • Registered
  • August 29, 2018
I have posted a write-up to the user voice platform concerning this issue.

If inconsistent image rotation is a bother for you, click the link below and upvote the topic.  Hopefully QB will take note and provide a fix.

https://quickbase.uservoice.com/forums/111823-quick-base-product-feedback/suggestions/35235568-fix-i...

  • Registered
  • December 4, 2018
It is pretty simple to use a short amount of script that will take a <input text=file> control and process (preview, scale, rotate, flip, crop, extract EFIX data ...) the selected image file prior to uploading the image to QuickBase. See this library for potential features:

JavaScript Load Image
https://github.com/blueimp/JavaScript-Load-Image

The key to doing this is to (1) use the FileReader API and (2) submitting the file using the Fetch API with FormData body.



The part that may be difficult to discover is that you have to set the subact to "save" when POSTing to ?a=FinishEditRecord:
var dbidTarget = "";
var fidTarget = "";
var myBlob = "";
var filename = "";
let myform = new FormData();
myform.set("subact", "save");
myform.set("rid", ridTarget);
myform.append('_fid_${fidTarget}', myBlob, filename);
let urlFileTarget = '${dbidTarget}?a=FinishEditRecord';
fetch(urlFileTarget, {
  method: "POST",
  body: myform,
  credentials: "include"
}).then(response => {
  // all done
});

Forum|alt.badge.img+7
  • Author
  • Registered
  • December 5, 2018
Agreed, the basic methodology behind a fix for this issue is very simple...all the more reason QB should have taken care of this years ago.  However offering a theoretical user-scripted solution to the issue very much misses the point that QB needs to step up to the plate and address some very fundamental mobile usability issues if they are going to live up to the promise of providing a more seamless mobile-to-desktop experience.  I'm all for employing script when it comes to enhancing or creating special functionality within QB, but I draw the line at spending my own time fixing basic functionality, like image uploads.

  • Registered
  • December 6, 2018
Here is a screenshot of a non-theoretical, practical and working demo:



With script I alter QuickBase's file attachment control to only browse for images:
<input type="file" size="40" name="_fid_8" id="_fid_8" accept="image/*">
When an image is selected, it is previewed to the spot on the form indicated by "Image" and displayed in a <canvas> item indicated by the spot on the form indicated by "Processed". Once the <canvas> loads I automatically flip and rotate the <canvas> and initiate the download of the processed image. Unfortunately I can't upload the processed image at this time because of my file storage quota.

However, to save the processed image all you have to do is call canvas.toBlob() and submit the blob using FormData API.

While the image is in the <canvas> it is possible to resize it, add a watermark or any other processing you desire. You can also extract any EXIF data from the image and slot it into extra fields on the form.

BTW, the girl in the photo is named Zoe and she is famous:

Know Your Meme ~ Disaster Girl


If you need this non-theoretical feature feel free to contact me off-world using the information in my profile:

https://getsatisfaction.com/people/dandiebolt