Implementation
static Future<CreateImageFromPDFResponse> createImageFromPDF({required String path, required String outputDirPath,
int? maxWidth, int? maxHeight, createOneImage}) async {
final Map<String, dynamic> params = <String, dynamic>{
'path': path,
'outputDirPath': outputDirPath,
'maxWidth' : maxWidth ?? 360,
'maxHeight' : maxHeight ?? 360,
'createOneImage' : createOneImage ?? true
};
if(path == ""){
createImageFromPDFResponse.value.status = Status.error;
createImageFromPDFResponse.value.message = Status.errorMessage;
}else{
try {
bool isImage = GetUtils.isPDF(path);
if(!isImage){
createImageFromPDFResponse.value.status = Status.error;
createImageFromPDFResponse.value.message = Status.errorMessageImage;
}else{
final response = await _channel.invokeMethod('createImageFromPDF', params);
if(response != null && response.length != 0){
createImageFromPDFResponse.value.response = [];
for(int i =0; i< response.length; i++){
createImageFromPDFResponse.value.response!.add(response[i]);
}
createImageFromPDFResponse.value.status = Status.success;
createImageFromPDFResponse.value.message = Status.successMessage;
}else{
createImageFromPDFResponse.value.status = Status.error;
createImageFromPDFResponse.value.message = Status.errorMessage;
}
}
} on Exception catch (exception) {
createImageFromPDFResponse.value.status = Status.error;
createImageFromPDFResponse.value.message = exception.toString();
} catch (e) {
createImageFromPDFResponse.value.status = Status.error;
createImageFromPDFResponse.value.message = e.toString();
}
}
return createImageFromPDFResponse.value;
}