Pdf to image custom page selection (#2576)
# Description Implemented custom page selection for the pdf-to-image feature, allowing users to specify which PDF pages to convert to images. 1. Variable Renaming: Changed singleOrMultiple to imageResultType because it supports three options: single, multiple, and custom. 2. New Field: Added pageNumbers to accept user-defined page selections. This field appears only when custom is selected in the UI. 3. New Method: Added getPageIndicesToConvert to process and validate the specified page numbers. 4. Method Update: Updated convertFromPdf to handle custom page numbers, ensuring only selected pages are converted. 5. Translation Properties: Added two new English translation properties, custom and customPageNumber, to all language files with placeholder values. These will need to be translated into country-specific languages in the future. Note: If an invalid page number is provided (zero, negative, or exceeds page count), a single image containing all PDF pages is generated. Closes #918 ## Checklist - [x] I have read the [Contribution Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md) - [x] I have performed a self-review of my own code - [x] I have attached images of the change if it is UI based - [x] I have commented my code, particularly in hard-to-understand areas - [x] If my code has heavily changed functionality I have updated relevant docs on [Stirling-PDFs doc repo](https://github.com/Stirling-Tools/Stirling-Tools.github.io/blob/main/docs/) - [x] My changes generate no new warnings - [x] I have read the section [Add New Translation Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/HowToAddNewLanguage.md#add-new-translation-tags) (for new translation tags only)   --------- Co-authored-by: Sai Kumar J <saikumar@Sais-MacBook-Air.local> Co-authored-by: Ludy <Ludy87@users.noreply.github.com> Co-authored-by: saikumar <saikumar.jetti@gmail.com> Co-authored-by: Anthony Stirling <77850077+Frooodle@users.noreply.github.com>
This commit is contained in:
@@ -39,6 +39,12 @@
|
||||
<option value="single" th:text="#{pdfToImage.single}"></option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="mb-3" id="singleOptionSection" >
|
||||
<label for="pageNumbers" th:text="#{pageSelectionPrompt}"></label>
|
||||
<input type="text" name="pageNumbers" class="form-control" id="pageNumbers" value="all"
|
||||
th:placeholder="#{pdfToImage.placeholder}" required>
|
||||
</div>
|
||||
<div class="mb-3">
|
||||
<label th:text="#{pdfToImage.colorType}"></label>
|
||||
<select class="form-control" name="colorType">
|
||||
@@ -59,5 +65,6 @@
|
||||
</div>
|
||||
<th:block th:insert="~{fragments/footer.html :: footer}"></th:block>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user