正常情况下我们通过下面方式获取宽高
java
PdfReader reader = new PdfReader(file.getPath());
float width = reader.getPageSize(1).getWidth();
float height = reader.getPageSize(1).getHeight();
但是这样获取的宽高是不准确的,永远都是 宽 > 高,也就是横向。所以实际上是需要使用旋转角度来进行判断
java
PdfReader reader = new PdfReader(file.getPath());
int rotation = reader.getPageRotation(1);
float width = 0f;
float height = 0f;
if (rotation == 270 || rotation == 90) {
width = reader.getPageSize(1).getHeight();
height = reader.getPageSize(1).getWidth();
}else{
width = reader.getPageSize(1).getWidth();
height = reader.getPageSize(1).getHeight();
}
当旋转为横向的时候,我们就把宽高倒置即可。