티스토리 뷰

헉!!/jsp, java

[JAVA] PDF to XLS

권태성 2020. 4. 9. 21:48
728x90

같은 라이브러리를 이용해서 PDF를 바로 XLS로 변환하는 방식도 있는데 XML로 변환 후 XLSX로 변환하는 방식을 추천하길래 따라서 해봤습니다.

간단한 텍스트가 있는 PDF는 꽤 괜찮게 변환이 되는데 아쉬운점은 표가 삽입되어있다거나 하는 경우는 변환이 원활하지 않았습니다.

일단은 참고로 남겨두기 위해 작성해두는 것이니 만약 이 글을 보시는 분이 계시다면 참고로만 봐주세요.

 

변환을 위해서는 aspose pdf, cells 라이브러리가 필요합니다.

해당 라이브러리의 다른 버전이나 추가 정보가 필요하신 분들은 아래 링크를 참고하세요.

https://mvnrepository.com/artifact/com.aspose/aspose-pdf/20.3

https://mvnrepository.com/artifact/com.aspose/aspose-cells/20.3

먼저 Repository를 추가해줍니다. (저는 maven을 사용했습니다.)

		<repository>
			<id>aspose</id>
			<url>https://artifact.aspose.com/repo/</url>
		</repository>

그리고 dependency 추가

		<dependency>
			<groupId>com.aspose</groupId>
			<artifactId>aspose-pdf</artifactId>
			<version>20.3</version>
		</dependency>

		<dependency>
			<groupId>com.aspose</groupId>
			<artifactId>aspose-cells</artifactId>
			<version>20.3</version>
		</dependency>

aspose-pdf는 pdf와 관련된 라이브러리이고 aspose-cells는 엑셀과 관련된 라이브러리입니다.

두 라이브러리를 함께 사용해서 PDF 파일을 엑셀로 변환 할 수 있습니다.

		Document doc = new Document("2020_03.pdf");
		ExcelSaveOptions excelSave = new ExcelSaveOptions();
		doc.save("2020_03.xml", excelSave);
		Workbook workbook = new Workbook("2020_03.xml");
		workbook.save("2020_03.xlsx", SaveFormat.XLSX);

 

728x90