Update DJVU via Python Cloud API
Update DJVU using native Python Cloud APIs without needing any image editor or 3rd-party libraries.
Get StartedHow to Update (resize, crop, flip&rotate) DJVU Using Python Cloud API
Aspose.Imaging.Cloud for Python API which is a feature-rich, powerful and easy to use image manipulation and conversion Cloud API for Python platform. You can download its latest version directly from pypi.org or install it from pip command line.
Command Prompt
> pip install aspose-imaging-cloud
Steps to Update DJVU via Python Cloud API
Developers can easily load and update (resize, crop, flip&rotate) DJVU files in just a few lines of code.
- Load DJVU file as stream
- Create & set the instance of UpdateImageRequest
- Set format, new size, crop area, RotateFlip method
- Call the CreateUpdatedImage method
- Get changed image from response stream
System Requirements
Aspose.Imaging Cloud for Python is supported on all major operating systems. Just make sure that you have the following prerequisites.
- Python 2.7 or later.
Update DJVU - Cloud
import os | |
import asposeimagingcloud.models.requests as requests | |
IMAGE_FILE_NAME= 'example_image.djvu'; | |
IMAGES_FOLDER = 'ExampleImages'; | |
CLOUD_FOLDER = 'CloudImages'; | |
OUTPUT_FOLDER = 'Output'; | |
# Get ClientId and ClientSecret from https://dashboard.aspose.cloud/ | |
# or use on-premise version (https://docs.aspose.cloud/imaging/getting-started/how-to-run-docker-container/) | |
_imaging_api = ImagingApi(client_secret, client_id, 'https://api.aspose.cloud') | |
def update_from_storage(self): | |
"""Update an image from cloud storage""" | |
input_image = os.path.join(IMAGES_FOLDER, IMAGE_FILE_NAME) | |
upload_file_request = requests.UploadFileRequest(os.path.join(CLOUD_FOLDER, IMAGE_FILE_NAME), input_image) | |
result = self._imaging_api.upload_file(upload_file_request) | |
if result.errors: | |
print('Uploading errors count: ' + str(len(result.errors))) | |
# Please refer to https://docs.aspose.cloud/imaging/supported-file-formats/#update for possible formats | |
format = 'tiff' # Resulting image format | |
new_width = 300 | |
new_height = 450 | |
x = 10 | |
y = 10 | |
rect_width = 200 | |
rect_height = 300 | |
rotate_flip_method = 'Rotate90FlipX' # RotateFlip method | |
folder = CLOUD_FOLDER # Input file is saved at the desired folder in the storage | |
storage = None # We are using default Cloud Storage | |
request = requests.UpdateImageRequest(IMAGE_FILE_NAME, new_width, new_height, x, y, rect_width, | |
rect_height, rotate_flip_method, format, folder, storage) | |
updated_image = self._imaging_api.update_image(request) | |
# Save the image file to output folder | |
filename_part, extension = os.path.splitext(IMAGE_FILE_NAME) | |
new_file_name = filename_part + '.' + 'tiff' | |
path = os.path.abspath(os.path.join(OUTPUT_FOLDER, new_file_name)) | |
shutil.copy(updated_image, path) | |
def create_updated_image_from_request(self): | |
"""Update an image. Image data is passed in a request stream""" | |
# Please refer to https://docs.aspose.cloud/imaging/supported-file-formats/#update for possible formats | |
format = 'tiff' # Resulting image format | |
new_width = 300 | |
new_height = 450 | |
x = 10 | |
y = 10 | |
rect_width = 200 | |
rect_height = 300 | |
rotate_flip_method = 'Rotate90FlipX' # RotateFlip method | |
storage = None # We are using default Cloud Storage | |
out_path = None # Path to updated file (if this is empty, response contains streamed image) | |
input_stream = os.path.join(IMAGES_FOLDER, IMAGE_FILE_NAME) | |
request = requests.CreateUpdatedImageRequest(input_stream, new_width, new_height, x, y, rect_width, | |
rect_height, rotate_flip_method, format, out_path, storage) | |
updated_image = self._imaging_api.create_updated_image(request) | |
# Save the image file to output folder | |
filename_part, extension = os.path.splitext(IMAGE_FILE_NAME) | |
new_file_name = filename_part + '.' + 'tiff' | |
path = os.path.abspath(os.path.join(OUTPUT_FOLDER, new_file_name)) | |
shutil.copy(updated_image, path) |
About Aspose.Imaging Cloud API for Python
Aspose.Imaging Cloud API is an image processing solution to process images (photos) within your cloud or web applications. It offers: cross-platform Image processing, including but not limited to conversions between various image formats (including uniform multi-page or multi-frame image processing), transformations (resize, crop, flip&rotate, grayscale, adjust), advanced image manipulation features (filtering, deskewing), AI features (i.e. object detection and reverse image search). It’s a Cloud API and does not depend on any software for image operations. One can easily add high-performance image conversion features with Cloud APIs within projects. Flexible integrations options including SDKs for various languages (Python, Ruby, .NET, Java, NodeJS, PHP) and the use of the REST API allow to make the integration easy.
Update DJVUs via Online App
Update DJVU documents by visiting our Live Demos website. The live demo has the following benefits:
DJVU What is DJVU File Format
DjVu, pronounced as “déjà vu”, is a graphics file format intended for scanned documents and books especially those which contain the combination of text, drawings, images and photographs. It was developed by AT&T Labs. It uses multiple techniques like image layer separation of text and background images, progressive loading, arithmetic coding and lossy compression for bitonal images. Since DJVU file can contain compressed yet high-quality colour images, photographs, text, and drawings and can be saved in less space therefore, it's used on web as eBooks, manuals, newspapers, ancient documents, etc.
Read MoreOther Supported Conversions
Using Python Cloud API, one can easily update different formats including: