You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ms...@apache.org on 2020/12/22 11:45:28 UTC
svn commit: r1884696 -
/pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/TextToPDF.java
Author: msahyoun
Date: Tue Dec 22 11:45:28 2020
New Revision: 1884696
URL: http://svn.apache.org/viewvc?rev=1884696&view=rev
Log:
PDFBOX-2602: change page sizes to use enum to build help text and validation
Modified:
pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/TextToPDF.java
Modified: pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/TextToPDF.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/TextToPDF.java?rev=1884696&r1=1884695&r2=1884696&view=diff
==============================================================================
--- pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/TextToPDF.java (original)
+++ pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/TextToPDF.java Tue Dec 22 11:45:28 2020
@@ -74,8 +74,8 @@ public class TextToPDF implements Callab
@Option(names = "-landscape", description = "set orientation to landscape")
private boolean landscape = false;
- @Option(names = "-pageSize", description = "the page size to use: Letter, Legal, A0, A1, A2, A3, A4, A5, A6 (default: ${DEFAULT-VALUE})")
- private String pageSize = "Letter";
+ @Option(names = "-pageSize", description = "the page size to use. \nCandidates: ${COMPLETION-CANDIDATES} (default: ${DEFAULT-VALUE})")
+ private PageSizes pageSize = PageSizes.LETTER;
@Option(names = "-standardFont",
description = "the font to use for the text. Either this or -ttf should be specified but not both.\nCandidates: ${COMPLETION-CANDIDATES} (default: ${DEFAULT-VALUE})")
@@ -93,6 +93,31 @@ public class TextToPDF implements Callab
@Option(names = {"-h", "--help"}, usageHelp = true, description = "display this help message")
boolean usageHelpRequested;
+ private enum PageSizes
+ {
+ LETTER(PDRectangle.LETTER),
+ LEGAL(PDRectangle.LEGAL),
+ A0(PDRectangle.A0),
+ A1(PDRectangle.A1),
+ A2(PDRectangle.A2),
+ A3(PDRectangle.A3),
+ A4(PDRectangle.A4),
+ A5(PDRectangle.A5),
+ A6(PDRectangle.A6);
+
+ final PDRectangle pageSize;
+
+ private PageSizes(PDRectangle pageSize)
+ {
+ this.pageSize = pageSize;
+ }
+
+ public PDRectangle getPageSize()
+ {
+ return this.pageSize;
+ }
+ }
+
private enum Standard14Fonts
{
TIMES_ROMAN(PDType1Font.TIMES_ROMAN.getBaseFont(), PDType1Font.TIMES_ROMAN),
@@ -162,7 +187,7 @@ public class TextToPDF implements Callab
setFont(font);
setFontSize(fontSize);
- setMediaBox(createRectangle(pageSize));
+ setMediaBox(pageSize.getPageSize());
setLandscape(landscape);
try (FileReader fileReader = new FileReader(infile))
@@ -173,7 +198,7 @@ public class TextToPDF implements Callab
}
catch (IOException ioe)
{
- SYSERR.println( "Error converting image to PDF: " + ioe.getMessage());
+ SYSERR.println( "Error converting text to PDF: " + ioe.getMessage());
return 4;
}
return 0;
@@ -361,50 +386,6 @@ public class TextToPDF implements Callab
}
}
- private static PDRectangle createRectangle( String paperSize )
- {
- if ("letter".equalsIgnoreCase(paperSize))
- {
- return PDRectangle.LETTER;
- }
- else if ("legal".equalsIgnoreCase(paperSize))
- {
- return PDRectangle.LEGAL;
- }
- else if ("A0".equalsIgnoreCase(paperSize))
- {
- return PDRectangle.A0;
- }
- else if ("A1".equalsIgnoreCase(paperSize))
- {
- return PDRectangle.A1;
- }
- else if ("A2".equalsIgnoreCase(paperSize))
- {
- return PDRectangle.A2;
- }
- else if ("A3".equalsIgnoreCase(paperSize))
- {
- return PDRectangle.A3;
- }
- else if ("A4".equalsIgnoreCase(paperSize))
- {
- return PDRectangle.A4;
- }
- else if ("A5".equalsIgnoreCase(paperSize))
- {
- return PDRectangle.A5;
- }
- else if ("A6".equalsIgnoreCase(paperSize))
- {
- return PDRectangle.A6;
- }
- else
- {
- return null;
- }
- }
-
/**
* @return Returns the font.
*/