mirror of
https://github.com/Frooodle/Stirling-PDF.git
synced 2025-03-02 00:16:47 +01:00
crop fix, auto split docs and UI and message
This commit is contained in:
parent
3d66f03f58
commit
4129c75475
@ -15,7 +15,7 @@ import jakarta.annotation.PostConstruct;
|
|||||||
import stirling.software.SPDF.utils.GeneralUtils;
|
import stirling.software.SPDF.utils.GeneralUtils;
|
||||||
|
|
||||||
@SpringBootApplication
|
@SpringBootApplication
|
||||||
@EnableScheduling
|
//@EnableScheduling
|
||||||
public class SPdfApplication {
|
public class SPdfApplication {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
|
@ -250,6 +250,14 @@ crop.submit=Submit
|
|||||||
#autoSplitPDF
|
#autoSplitPDF
|
||||||
autoSplitPDF.title=Auto Split PDF
|
autoSplitPDF.title=Auto Split PDF
|
||||||
autoSplitPDF.header=Auto Split PDF
|
autoSplitPDF.header=Auto Split PDF
|
||||||
|
autoSplitPDF.description=Print, Insert, Scan, upload, and let us auto-separate your documents. No manual work sorting needed.
|
||||||
|
autoSplitPDF.selectText.1=Print out some divider sheets from below (Black and white is fine).
|
||||||
|
autoSplitPDF.selectText.2=Scan all your documents at once by inserting the divider sheet between them.
|
||||||
|
autoSplitPDF.selectText.3=Upload the single large scanned PDF file and let Stirling PDF handle the rest.
|
||||||
|
autoSplitPDF.selectText.4=Divider pages are automatically detected and removed, guaranteeing a neat final document.
|
||||||
|
autoSplitPDF.formPrompt=Submit PDF containing Stirling-PDF Page dividers:
|
||||||
|
autoSplitPDF.dividerDownload1=Download 'Auto Splitter Divider (minimal).pdf'
|
||||||
|
autoSplitPDF.dividerDownload2=Download 'Auto Splitter Divider (with instructions).pdf'
|
||||||
autoSplitPDF.submit=Submit
|
autoSplitPDF.submit=Submit
|
||||||
|
|
||||||
|
|
||||||
|
@ -250,6 +250,14 @@ crop.submit=Submit
|
|||||||
#autoSplitPDF
|
#autoSplitPDF
|
||||||
autoSplitPDF.title=Auto Split PDF
|
autoSplitPDF.title=Auto Split PDF
|
||||||
autoSplitPDF.header=Auto Split PDF
|
autoSplitPDF.header=Auto Split PDF
|
||||||
|
autoSplitPDF.description=Print, Insert, Scan, upload, and let us auto-separate your documents. No manual work sorting needed.
|
||||||
|
autoSplitPDF.selectText.1=Print out some divider sheets from below (Black and white is fine).
|
||||||
|
autoSplitPDF.selectText.2=Scan all your documents at once by inserting the divider sheet between them.
|
||||||
|
autoSplitPDF.selectText.3=Upload the single large scanned PDF file and let Stirling PDF handle the rest.
|
||||||
|
autoSplitPDF.selectText.4=Divider pages are automatically detected and removed, guaranteeing a neat final document.
|
||||||
|
autoSplitPDF.formPrompt=Submit PDF containing Stirling-PDF Page dividers:
|
||||||
|
autoSplitPDF.dividerDownload1=Download 'Auto Splitter Divider (minimal).pdf'
|
||||||
|
autoSplitPDF.dividerDownload2=Download 'Auto Splitter Divider (with instructions).pdf'
|
||||||
autoSplitPDF.submit=Submit
|
autoSplitPDF.submit=Submit
|
||||||
|
|
||||||
|
|
||||||
|
@ -250,6 +250,14 @@ crop.submit=Submit
|
|||||||
#autoSplitPDF
|
#autoSplitPDF
|
||||||
autoSplitPDF.title=Auto Split PDF
|
autoSplitPDF.title=Auto Split PDF
|
||||||
autoSplitPDF.header=Auto Split PDF
|
autoSplitPDF.header=Auto Split PDF
|
||||||
|
autoSplitPDF.description=Print, Insert, Scan, upload, and let us auto-separate your documents. No manual work sorting needed.
|
||||||
|
autoSplitPDF.selectText.1=Print out some divider sheets from below (Black and white is fine).
|
||||||
|
autoSplitPDF.selectText.2=Scan all your documents at once by inserting the divider sheet between them.
|
||||||
|
autoSplitPDF.selectText.3=Upload the single large scanned PDF file and let Stirling PDF handle the rest.
|
||||||
|
autoSplitPDF.selectText.4=Divider pages are automatically detected and removed, guaranteeing a neat final document.
|
||||||
|
autoSplitPDF.formPrompt=Submit PDF containing Stirling-PDF Page dividers:
|
||||||
|
autoSplitPDF.dividerDownload1=Download 'Auto Splitter Divider (minimal).pdf'
|
||||||
|
autoSplitPDF.dividerDownload2=Download 'Auto Splitter Divider (with instructions).pdf'
|
||||||
autoSplitPDF.submit=Submit
|
autoSplitPDF.submit=Submit
|
||||||
|
|
||||||
|
|
||||||
|
@ -238,6 +238,14 @@ crop.submit=Submit
|
|||||||
#autoSplitPDF
|
#autoSplitPDF
|
||||||
autoSplitPDF.title=Auto Split PDF
|
autoSplitPDF.title=Auto Split PDF
|
||||||
autoSplitPDF.header=Auto Split PDF
|
autoSplitPDF.header=Auto Split PDF
|
||||||
|
autoSplitPDF.description=Print, Insert, Scan, upload, and let us auto-separate your documents. No manual work sorting needed.
|
||||||
|
autoSplitPDF.selectText.1=Print out some divider sheets from below (Black and white is fine).
|
||||||
|
autoSplitPDF.selectText.2=Scan all your documents at once by inserting the divider sheet between them.
|
||||||
|
autoSplitPDF.selectText.3=Upload the single large scanned PDF file and let Stirling PDF handle the rest.
|
||||||
|
autoSplitPDF.selectText.4=Divider pages are automatically detected and removed, guaranteeing a neat final document.
|
||||||
|
autoSplitPDF.formPrompt=Submit PDF containing Stirling-PDF Page dividers:
|
||||||
|
autoSplitPDF.dividerDownload1=Download 'Auto Splitter Divider (minimal).pdf'
|
||||||
|
autoSplitPDF.dividerDownload2=Download 'Auto Splitter Divider (with instructions).pdf'
|
||||||
autoSplitPDF.submit=Submit
|
autoSplitPDF.submit=Submit
|
||||||
|
|
||||||
|
|
||||||
|
@ -253,6 +253,14 @@ crop.submit=Submit
|
|||||||
#autoSplitPDF
|
#autoSplitPDF
|
||||||
autoSplitPDF.title=Auto Split PDF
|
autoSplitPDF.title=Auto Split PDF
|
||||||
autoSplitPDF.header=Auto Split PDF
|
autoSplitPDF.header=Auto Split PDF
|
||||||
|
autoSplitPDF.description=Print, Insert, Scan, upload, and let us auto-separate your documents. No manual work sorting needed.
|
||||||
|
autoSplitPDF.selectText.1=Print out some divider sheets from below (Black and white is fine).
|
||||||
|
autoSplitPDF.selectText.2=Scan all your documents at once by inserting the divider sheet between them.
|
||||||
|
autoSplitPDF.selectText.3=Upload the single large scanned PDF file and let Stirling PDF handle the rest.
|
||||||
|
autoSplitPDF.selectText.4=Divider pages are automatically detected and removed, guaranteeing a neat final document.
|
||||||
|
autoSplitPDF.formPrompt=Submit PDF containing Stirling-PDF Page dividers:
|
||||||
|
autoSplitPDF.dividerDownload1=Download 'Auto Splitter Divider (minimal).pdf'
|
||||||
|
autoSplitPDF.dividerDownload2=Download 'Auto Splitter Divider (with instructions).pdf'
|
||||||
autoSplitPDF.submit=Submit
|
autoSplitPDF.submit=Submit
|
||||||
|
|
||||||
|
|
||||||
|
@ -253,6 +253,14 @@ crop.submit=Submit
|
|||||||
#autoSplitPDF
|
#autoSplitPDF
|
||||||
autoSplitPDF.title=Auto Split PDF
|
autoSplitPDF.title=Auto Split PDF
|
||||||
autoSplitPDF.header=Auto Split PDF
|
autoSplitPDF.header=Auto Split PDF
|
||||||
|
autoSplitPDF.description=Print, Insert, Scan, upload, and let us auto-separate your documents. No manual work sorting needed.
|
||||||
|
autoSplitPDF.selectText.1=Print out some divider sheets from below (Black and white is fine).
|
||||||
|
autoSplitPDF.selectText.2=Scan all your documents at once by inserting the divider sheet between them.
|
||||||
|
autoSplitPDF.selectText.3=Upload the single large scanned PDF file and let Stirling PDF handle the rest.
|
||||||
|
autoSplitPDF.selectText.4=Divider pages are automatically detected and removed, guaranteeing a neat final document.
|
||||||
|
autoSplitPDF.formPrompt=Submit PDF containing Stirling-PDF Page dividers:
|
||||||
|
autoSplitPDF.dividerDownload1=Download 'Auto Splitter Divider (minimal).pdf'
|
||||||
|
autoSplitPDF.dividerDownload2=Download 'Auto Splitter Divider (with instructions).pdf'
|
||||||
autoSplitPDF.submit=Submit
|
autoSplitPDF.submit=Submit
|
||||||
|
|
||||||
|
|
||||||
|
@ -253,6 +253,14 @@ crop.submit=Submit
|
|||||||
#autoSplitPDF
|
#autoSplitPDF
|
||||||
autoSplitPDF.title=Auto Split PDF
|
autoSplitPDF.title=Auto Split PDF
|
||||||
autoSplitPDF.header=Auto Split PDF
|
autoSplitPDF.header=Auto Split PDF
|
||||||
|
autoSplitPDF.description=Print, Insert, Scan, upload, and let us auto-separate your documents. No manual work sorting needed.
|
||||||
|
autoSplitPDF.selectText.1=Print out some divider sheets from below (Black and white is fine).
|
||||||
|
autoSplitPDF.selectText.2=Scan all your documents at once by inserting the divider sheet between them.
|
||||||
|
autoSplitPDF.selectText.3=Upload the single large scanned PDF file and let Stirling PDF handle the rest.
|
||||||
|
autoSplitPDF.selectText.4=Divider pages are automatically detected and removed, guaranteeing a neat final document.
|
||||||
|
autoSplitPDF.formPrompt=Submit PDF containing Stirling-PDF Page dividers:
|
||||||
|
autoSplitPDF.dividerDownload1=Download 'Auto Splitter Divider (minimal).pdf'
|
||||||
|
autoSplitPDF.dividerDownload2=Download 'Auto Splitter Divider (with instructions).pdf'
|
||||||
autoSplitPDF.submit=Submit
|
autoSplitPDF.submit=Submit
|
||||||
|
|
||||||
|
|
||||||
|
@ -250,9 +250,16 @@ crop.submit=Submit
|
|||||||
#autoSplitPDF
|
#autoSplitPDF
|
||||||
autoSplitPDF.title=Auto Split PDF
|
autoSplitPDF.title=Auto Split PDF
|
||||||
autoSplitPDF.header=Auto Split PDF
|
autoSplitPDF.header=Auto Split PDF
|
||||||
|
autoSplitPDF.description=Print, Insert, Scan, upload, and let us auto-separate your documents. No manual work sorting needed.
|
||||||
|
autoSplitPDF.selectText.1=Print out some divider sheets from below (Black and white is fine).
|
||||||
|
autoSplitPDF.selectText.2=Scan all your documents at once by inserting the divider sheet between them.
|
||||||
|
autoSplitPDF.selectText.3=Upload the single large scanned PDF file and let Stirling PDF handle the rest.
|
||||||
|
autoSplitPDF.selectText.4=Divider pages are automatically detected and removed, guaranteeing a neat final document.
|
||||||
|
autoSplitPDF.formPrompt=Submit PDF containing Stirling-PDF Page dividers:
|
||||||
|
autoSplitPDF.dividerDownload1=Download 'Auto Splitter Divider (minimal).pdf'
|
||||||
|
autoSplitPDF.dividerDownload2=Download 'Auto Splitter Divider (with instructions).pdf'
|
||||||
autoSplitPDF.submit=Submit
|
autoSplitPDF.submit=Submit
|
||||||
|
|
||||||
|
|
||||||
#pipeline
|
#pipeline
|
||||||
pipeline.title=Pipeline
|
pipeline.title=Pipeline
|
||||||
|
|
||||||
|
@ -250,6 +250,14 @@ crop.submit=Submit
|
|||||||
#autoSplitPDF
|
#autoSplitPDF
|
||||||
autoSplitPDF.title=Auto Split PDF
|
autoSplitPDF.title=Auto Split PDF
|
||||||
autoSplitPDF.header=Auto Split PDF
|
autoSplitPDF.header=Auto Split PDF
|
||||||
|
autoSplitPDF.description=Print, Insert, Scan, upload, and let us auto-separate your documents. No manual work sorting needed.
|
||||||
|
autoSplitPDF.selectText.1=Print out some divider sheets from below (Black and white is fine).
|
||||||
|
autoSplitPDF.selectText.2=Scan all your documents at once by inserting the divider sheet between them.
|
||||||
|
autoSplitPDF.selectText.3=Upload the single large scanned PDF file and let Stirling PDF handle the rest.
|
||||||
|
autoSplitPDF.selectText.4=Divider pages are automatically detected and removed, guaranteeing a neat final document.
|
||||||
|
autoSplitPDF.formPrompt=Submit PDF containing Stirling-PDF Page dividers:
|
||||||
|
autoSplitPDF.dividerDownload1=Download 'Auto Splitter Divider (minimal).pdf'
|
||||||
|
autoSplitPDF.dividerDownload2=Download 'Auto Splitter Divider (with instructions).pdf'
|
||||||
autoSplitPDF.submit=Submit
|
autoSplitPDF.submit=Submit
|
||||||
|
|
||||||
|
|
||||||
|
@ -250,6 +250,14 @@ crop.submit=Submit
|
|||||||
#autoSplitPDF
|
#autoSplitPDF
|
||||||
autoSplitPDF.title=Auto Split PDF
|
autoSplitPDF.title=Auto Split PDF
|
||||||
autoSplitPDF.header=Auto Split PDF
|
autoSplitPDF.header=Auto Split PDF
|
||||||
|
autoSplitPDF.description=Print, Insert, Scan, upload, and let us auto-separate your documents. No manual work sorting needed.
|
||||||
|
autoSplitPDF.selectText.1=Print out some divider sheets from below (Black and white is fine).
|
||||||
|
autoSplitPDF.selectText.2=Scan all your documents at once by inserting the divider sheet between them.
|
||||||
|
autoSplitPDF.selectText.3=Upload the single large scanned PDF file and let Stirling PDF handle the rest.
|
||||||
|
autoSplitPDF.selectText.4=Divider pages are automatically detected and removed, guaranteeing a neat final document.
|
||||||
|
autoSplitPDF.formPrompt=Submit PDF containing Stirling-PDF Page dividers:
|
||||||
|
autoSplitPDF.dividerDownload1=Download 'Auto Splitter Divider (minimal).pdf'
|
||||||
|
autoSplitPDF.dividerDownload2=Download 'Auto Splitter Divider (with instructions).pdf'
|
||||||
autoSplitPDF.submit=Submit
|
autoSplitPDF.submit=Submit
|
||||||
|
|
||||||
|
|
||||||
|
@ -250,9 +250,16 @@ crop.submit=Submit
|
|||||||
#autoSplitPDF
|
#autoSplitPDF
|
||||||
autoSplitPDF.title=Auto Split PDF
|
autoSplitPDF.title=Auto Split PDF
|
||||||
autoSplitPDF.header=Auto Split PDF
|
autoSplitPDF.header=Auto Split PDF
|
||||||
|
autoSplitPDF.description=Print, Insert, Scan, upload, and let us auto-separate your documents. No manual work sorting needed.
|
||||||
|
autoSplitPDF.selectText.1=Print out some divider sheets from below (Black and white is fine).
|
||||||
|
autoSplitPDF.selectText.2=Scan all your documents at once by inserting the divider sheet between them.
|
||||||
|
autoSplitPDF.selectText.3=Upload the single large scanned PDF file and let Stirling PDF handle the rest.
|
||||||
|
autoSplitPDF.selectText.4=Divider pages are automatically detected and removed, guaranteeing a neat final document.
|
||||||
|
autoSplitPDF.formPrompt=Submit PDF containing Stirling-PDF Page dividers:
|
||||||
|
autoSplitPDF.dividerDownload1=Download 'Auto Splitter Divider (minimal).pdf'
|
||||||
|
autoSplitPDF.dividerDownload2=Download 'Auto Splitter Divider (with instructions).pdf'
|
||||||
autoSplitPDF.submit=Submit
|
autoSplitPDF.submit=Submit
|
||||||
|
|
||||||
|
|
||||||
#pipeline
|
#pipeline
|
||||||
pipeline.title=Pipeline
|
pipeline.title=Pipeline
|
||||||
|
|
||||||
|
@ -250,6 +250,14 @@ crop.submit=Submit
|
|||||||
#autoSplitPDF
|
#autoSplitPDF
|
||||||
autoSplitPDF.title=Auto Split PDF
|
autoSplitPDF.title=Auto Split PDF
|
||||||
autoSplitPDF.header=Auto Split PDF
|
autoSplitPDF.header=Auto Split PDF
|
||||||
|
autoSplitPDF.description=Print, Insert, Scan, upload, and let us auto-separate your documents. No manual work sorting needed.
|
||||||
|
autoSplitPDF.selectText.1=Print out some divider sheets from below (Black and white is fine).
|
||||||
|
autoSplitPDF.selectText.2=Scan all your documents at once by inserting the divider sheet between them.
|
||||||
|
autoSplitPDF.selectText.3=Upload the single large scanned PDF file and let Stirling PDF handle the rest.
|
||||||
|
autoSplitPDF.selectText.4=Divider pages are automatically detected and removed, guaranteeing a neat final document.
|
||||||
|
autoSplitPDF.formPrompt=Submit PDF containing Stirling-PDF Page dividers:
|
||||||
|
autoSplitPDF.dividerDownload1=Download 'Auto Splitter Divider (minimal).pdf'
|
||||||
|
autoSplitPDF.dividerDownload2=Download 'Auto Splitter Divider (with instructions).pdf'
|
||||||
autoSplitPDF.submit=Submit
|
autoSplitPDF.submit=Submit
|
||||||
|
|
||||||
|
|
||||||
|
@ -250,6 +250,14 @@ crop.submit=Submit
|
|||||||
#autoSplitPDF
|
#autoSplitPDF
|
||||||
autoSplitPDF.title=Auto Split PDF
|
autoSplitPDF.title=Auto Split PDF
|
||||||
autoSplitPDF.header=Auto Split PDF
|
autoSplitPDF.header=Auto Split PDF
|
||||||
|
autoSplitPDF.description=Print, Insert, Scan, upload, and let us auto-separate your documents. No manual work sorting needed.
|
||||||
|
autoSplitPDF.selectText.1=Print out some divider sheets from below (Black and white is fine).
|
||||||
|
autoSplitPDF.selectText.2=Scan all your documents at once by inserting the divider sheet between them.
|
||||||
|
autoSplitPDF.selectText.3=Upload the single large scanned PDF file and let Stirling PDF handle the rest.
|
||||||
|
autoSplitPDF.selectText.4=Divider pages are automatically detected and removed, guaranteeing a neat final document.
|
||||||
|
autoSplitPDF.formPrompt=Submit PDF containing Stirling-PDF Page dividers:
|
||||||
|
autoSplitPDF.dividerDownload1=Download 'Auto Splitter Divider (minimal).pdf'
|
||||||
|
autoSplitPDF.dividerDownload2=Download 'Auto Splitter Divider (with instructions).pdf'
|
||||||
autoSplitPDF.submit=Submit
|
autoSplitPDF.submit=Submit
|
||||||
|
|
||||||
|
|
||||||
|
@ -253,6 +253,14 @@ crop.submit=Submit
|
|||||||
#autoSplitPDF
|
#autoSplitPDF
|
||||||
autoSplitPDF.title=Auto Split PDF
|
autoSplitPDF.title=Auto Split PDF
|
||||||
autoSplitPDF.header=Auto Split PDF
|
autoSplitPDF.header=Auto Split PDF
|
||||||
|
autoSplitPDF.description=Print, Insert, Scan, upload, and let us auto-separate your documents. No manual work sorting needed.
|
||||||
|
autoSplitPDF.selectText.1=Print out some divider sheets from below (Black and white is fine).
|
||||||
|
autoSplitPDF.selectText.2=Scan all your documents at once by inserting the divider sheet between them.
|
||||||
|
autoSplitPDF.selectText.3=Upload the single large scanned PDF file and let Stirling PDF handle the rest.
|
||||||
|
autoSplitPDF.selectText.4=Divider pages are automatically detected and removed, guaranteeing a neat final document.
|
||||||
|
autoSplitPDF.formPrompt=Submit PDF containing Stirling-PDF Page dividers:
|
||||||
|
autoSplitPDF.dividerDownload1=Download 'Auto Splitter Divider (minimal).pdf'
|
||||||
|
autoSplitPDF.dividerDownload2=Download 'Auto Splitter Divider (with instructions).pdf'
|
||||||
autoSplitPDF.submit=Submit
|
autoSplitPDF.submit=Submit
|
||||||
|
|
||||||
|
|
||||||
|
@ -250,6 +250,14 @@ crop.submit=Submit
|
|||||||
#autoSplitPDF
|
#autoSplitPDF
|
||||||
autoSplitPDF.title=Auto Split PDF
|
autoSplitPDF.title=Auto Split PDF
|
||||||
autoSplitPDF.header=Auto Split PDF
|
autoSplitPDF.header=Auto Split PDF
|
||||||
|
autoSplitPDF.description=Print, Insert, Scan, upload, and let us auto-separate your documents. No manual work sorting needed.
|
||||||
|
autoSplitPDF.selectText.1=Print out some divider sheets from below (Black and white is fine).
|
||||||
|
autoSplitPDF.selectText.2=Scan all your documents at once by inserting the divider sheet between them.
|
||||||
|
autoSplitPDF.selectText.3=Upload the single large scanned PDF file and let Stirling PDF handle the rest.
|
||||||
|
autoSplitPDF.selectText.4=Divider pages are automatically detected and removed, guaranteeing a neat final document.
|
||||||
|
autoSplitPDF.formPrompt=Submit PDF containing Stirling-PDF Page dividers:
|
||||||
|
autoSplitPDF.dividerDownload1=Download 'Auto Splitter Divider (minimal).pdf'
|
||||||
|
autoSplitPDF.dividerDownload2=Download 'Auto Splitter Divider (with instructions).pdf'
|
||||||
autoSplitPDF.submit=Submit
|
autoSplitPDF.submit=Submit
|
||||||
|
|
||||||
|
|
||||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -14,12 +14,21 @@
|
|||||||
<div class="row justify-content-center">
|
<div class="row justify-content-center">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<h2 th:text="#{autoSplitPDF.header}"></h2>
|
<h2 th:text="#{autoSplitPDF.header}"></h2>
|
||||||
<form method="post" enctype="multipart/form-data" th:action="@{auto-split-pdf}">
|
<!-- Added a brief description -->
|
||||||
<div th:replace="~{fragments/common :: fileSelector(name='fileInput', multiple=false)}"></div>
|
<p th:text="#{autoSplitPDF.description}"></p>
|
||||||
<button type="submit" id="submitBtn" class="btn btn-primary" th:text="#{autoSplitPDF.submit}"></button>
|
<ul>
|
||||||
|
<li th:text="#{autoSplitPDF.selectText.1}"></li>
|
||||||
</form>
|
<li th:text="#{autoSplitPDF.selectText.2}"></li>
|
||||||
|
<li th:text="#{autoSplitPDF.selectText.3}"></li>
|
||||||
|
<li th:text="#{autoSplitPDF.selectText.4}"></li>
|
||||||
|
</ul>
|
||||||
|
<form method="post" enctype="multipart/form-data">
|
||||||
|
<p th:text="#{autoSplitPDF.formPrompt}"></p>
|
||||||
|
<div th:replace="~{fragments/common :: fileSelector(name='fileInput', multiple=false)}"></div>
|
||||||
|
<p><a th:href="@{files/Auto Splitter Divider (minimal).pdf}" download th:text="#{autoSplitPDF.dividerDownload1}"></a></p>
|
||||||
|
<p><a th:href="@{files/Auto Splitter Divider (with instructions).pdf}" download th:text="#{autoSplitPDF.dividerDownload2}"></a></p>
|
||||||
|
<button type="submit" id="submitBtn" class="btn btn-primary" th:text="#{autoSplitPDF.submit}"></button>
|
||||||
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -21,11 +21,23 @@
|
|||||||
<input id="height" type="hidden" name="height">
|
<input id="height" type="hidden" name="height">
|
||||||
<button type="submit" class="btn btn-primary" th:text="#{crop.submit}"></button>
|
<button type="submit" class="btn btn-primary" th:text="#{crop.submit}"></button>
|
||||||
</form>
|
</form>
|
||||||
<canvas id="pdf-canvas"></canvas>
|
<div style="position: relative; display: inline-block;">
|
||||||
|
<canvas id="pdf-canvas" style="position: absolute; top: 0; left: 0; z-index: 1;"></canvas>
|
||||||
|
<canvas id="overlayCanvas" style="position: absolute; top: 0; left: 0; z-index: 2;"></canvas>
|
||||||
|
</div>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
let canvas = document.getElementById('pdf-canvas');
|
let pdfCanvas = document.getElementById('pdf-canvas');
|
||||||
let context = canvas.getContext('2d');
|
let overlayCanvas = document.getElementById('overlayCanvas');
|
||||||
|
|
||||||
|
let context = pdfCanvas.getContext('2d');
|
||||||
|
let overlayContext = overlayCanvas.getContext('2d');
|
||||||
|
|
||||||
|
overlayCanvas.width = pdfCanvas.width;
|
||||||
|
overlayCanvas.height = pdfCanvas.height;
|
||||||
|
|
||||||
|
let isDrawing = false; // New flag to check if drawing is ongoing
|
||||||
|
|
||||||
let cropForm = document.getElementById('cropForm');
|
let cropForm = document.getElementById('cropForm');
|
||||||
let fileInput = document.getElementById('fileInput-input');
|
let fileInput = document.getElementById('fileInput-input');
|
||||||
@ -59,38 +71,68 @@
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
canvas.addEventListener('mousedown', function(e) {
|
overlayCanvas.addEventListener('mousedown', function(e) {
|
||||||
startX = e.offsetX;
|
// Clear previously drawn rectangle on the main canvas
|
||||||
startY = e.offsetY;
|
context.clearRect(0, 0, pdfCanvas.width, pdfCanvas.height);
|
||||||
|
renderPage(currentPage); // Re-render the PDF
|
||||||
|
|
||||||
|
// Clear the overlay canvas to ensure old drawings are removed
|
||||||
|
overlayContext.clearRect(0, 0, overlayCanvas.width, overlayCanvas.height);
|
||||||
|
|
||||||
|
startX = e.offsetX;
|
||||||
|
startY = e.offsetY;
|
||||||
|
isDrawing = true;
|
||||||
});
|
});
|
||||||
|
|
||||||
canvas.addEventListener('mouseup', function(e) {
|
overlayCanvas.addEventListener('mousemove', function(e) {
|
||||||
rectWidth = e.offsetX - startX;
|
if (!isDrawing) return;
|
||||||
rectHeight = e.offsetY - startY;
|
overlayContext.clearRect(0, 0, overlayCanvas.width, overlayCanvas.height); // Clear previous rectangle
|
||||||
|
|
||||||
// Flip the y-coordinate
|
rectWidth = e.offsetX - startX;
|
||||||
let flippedY = canvas.height - e.offsetY;
|
rectHeight = e.offsetY - startY;
|
||||||
|
overlayContext.strokeStyle = 'red';
|
||||||
|
overlayContext.strokeRect(startX, startY, rectWidth, rectHeight);
|
||||||
|
});
|
||||||
|
|
||||||
xInput.value = startX;
|
overlayCanvas.addEventListener('mouseup', function(e) {
|
||||||
yInput.value = flippedY;
|
isDrawing = false;
|
||||||
widthInput.value = rectWidth;
|
|
||||||
heightInput.value = rectHeight;
|
|
||||||
|
|
||||||
context.strokeStyle = 'red';
|
rectWidth = e.offsetX - startX;
|
||||||
context.strokeRect(startX, startY, rectWidth, rectHeight);
|
rectHeight = e.offsetY - startY;
|
||||||
});
|
|
||||||
|
let flippedY = pdfCanvas.height - e.offsetY;
|
||||||
|
|
||||||
|
xInput.value = startX;
|
||||||
|
yInput.value = flippedY;
|
||||||
|
widthInput.value = rectWidth;
|
||||||
|
heightInput.value = rectHeight;
|
||||||
|
|
||||||
|
// Draw the final rectangle on the main canvas
|
||||||
|
context.strokeStyle = 'red';
|
||||||
|
context.strokeRect(startX, startY, rectWidth, rectHeight);
|
||||||
|
|
||||||
|
overlayContext.clearRect(0, 0, overlayCanvas.width, overlayCanvas.height); // Clear the overlay
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
function renderPage(pageNumber) {
|
function renderPage(pageNumber) {
|
||||||
pdfDoc.getPage(pageNumber).then(function(page) {
|
pdfDoc.getPage(pageNumber).then(function(page) {
|
||||||
let viewport = page.getViewport({ scale: 1.0 });
|
let viewport = page.getViewport({ scale: 1.0 });
|
||||||
canvas.width = viewport.width;
|
pdfCanvas.width = viewport.width;
|
||||||
canvas.height = viewport.height;
|
pdfCanvas.height = viewport.height;
|
||||||
let renderContext = { canvasContext: context, viewport: viewport };
|
|
||||||
page.render(renderContext);
|
overlayCanvas.width = viewport.width; // Match overlay canvas size with PDF canvas
|
||||||
});
|
overlayCanvas.height = viewport.height;
|
||||||
|
|
||||||
|
let renderContext = { canvasContext: context, viewport: viewport };
|
||||||
|
page.render(renderContext);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
Loading…
Reference in New Issue
Block a user