Perform rotation in a page worker context with the right origin to avoid security errors. Win.
Use blob instead of data URI, but make sure to destroy unused blobs.