Warnung vor dem Überschreiben von Dateien implementiert
This commit is contained in:
@@ -205,8 +205,12 @@ public class Worker {
|
||||
var project = docTable.getProject(resolvedPath).orElseGet(() -> docTable.createProject(resolvedPath));
|
||||
int rotation = this.rotationAngle;
|
||||
File targetFile = prepareProject(project);
|
||||
File jpeg = new File(targetFile+".jpg");
|
||||
File pdf = new File(targetFile+".pdf");
|
||||
if (!JPG.equals(type) && overwriteAbort(pdf)) return; // if PDF conversion is sheduled: avoid overwriting pdf
|
||||
if (overwriteAbort(jpeg)) return;
|
||||
var type = getType();
|
||||
var page = project.addPage(new File(targetFile+".jpg"));
|
||||
var page = project.addPage(jpeg);
|
||||
scanJpeg(targetFile,project);
|
||||
improveJpeg(targetFile,project,rotation);
|
||||
|
||||
@@ -232,6 +236,12 @@ public class Worker {
|
||||
preview(page);
|
||||
}
|
||||
|
||||
private boolean overwriteAbort(File targetFile) {
|
||||
if (!targetFile.exists()) return false;
|
||||
var answer = JOptionPane.showConfirmDialog(mainFrame,t("File \"{}\" does already exist and would be overwritten. Continue?",targetFile),t("Overwrite file"),JOptionPane.YES_NO_OPTION);
|
||||
return answer != JOptionPane.YES_OPTION;
|
||||
}
|
||||
|
||||
private void performTextRecognition(File targetFile, Project project) {
|
||||
String pdf = targetFile.getName() + ".tmp.pdf";
|
||||
String ocr = targetFile.getName() + ".pdf";
|
||||
@@ -546,8 +556,8 @@ public class Worker {
|
||||
cmd.add("output");
|
||||
var pageReplace = removePageOnStitching ? "" : firstPage+"…"+lastPage;
|
||||
File joinedPDF = new File(project.pattern().replace("["+PAGE+"]",pageReplace).trim()+".pdf");
|
||||
String target = joinedPDF.getName();
|
||||
cmd.add(target);
|
||||
cmd.add(joinedPDF.getName());
|
||||
if (overwriteAbort(joinedPDF)) return;
|
||||
|
||||
LOG.debug("executing {}",cmd);
|
||||
var builder = new ProcessBuilder(cmd);
|
||||
|
||||
Reference in New Issue
Block a user