diff --git a/app/src/main/java/com/all/pdfreader/pro/app/ui/act/PdfResultActivity.kt b/app/src/main/java/com/all/pdfreader/pro/app/ui/act/PdfResultActivity.kt index 728668d..3d4992d 100644 --- a/app/src/main/java/com/all/pdfreader/pro/app/ui/act/PdfResultActivity.kt +++ b/app/src/main/java/com/all/pdfreader/pro/app/ui/act/PdfResultActivity.kt @@ -342,6 +342,40 @@ class PdfResultActivity : BaseActivity() { } } } + } else if (source == PdfPickerSource.TO_LONG_IMAGE) { + val filepath = intent.getStringExtra(EXTRA_FILE_PATH) ?: "" + if (filepath.isEmpty()) { + showToast(getString(R.string.pdf_loading_failed)) + finish() + return@launch + } + runOnUiThread { + binding.congratulationsDesc.text = getString(R.string.converted_successfully) + } + val selectedPages: ArrayList = + requireParcelableArrayList(EXTRA_PDF_TO_IMAGE_LIST) + val pdfToImgPassword = intent.getStringExtra(EXTRA_PDF_TO_IMAGE_PASSWORD) ?: "" + val outputDir = File( + Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOCUMENTS), + "PDFReaderPro/pdf2LongImg" + ).apply { if (!exists()) mkdirs() } + PdfUtils.exportPagesAsLongImage( + context = this@PdfResultActivity, + inputFile = File(filepath), + selectedPages = selectedPages, + outputDir = outputDir, + password = pdfToImgPassword, + onProgress = { current, total -> + val progressPercent = current * 100 / total + runOnUiThread { + binding.progressBar.progress = progressPercent + binding.progressTv.text = "$progressPercent" + } + } + )?.let { file-> + val result = PdfSplitResultItem(file.absolutePath, file.absolutePath, false) + resultList.add(result) + } } withContext(Dispatchers.Main) { binding.processingLayout.visibility = View.GONE