sdk: 20.9 word.android.via.java
平台:android
列表符号渲染不出来。如图
image.jpg (110.9 KB)
预期应该展示:
image.jpg (86.4 KB)
我上传了我们用于测试的文档和最终生成的图片。
图片是通过renderToSize(index, canvas, x, y ,width, height)生成的。其中的页面边距是被裁切掉的。
Log.d("MainActivity", "开始")
val start = SystemClock.elapsedRealtime()
val doc = Document(this.assets.open("测试字数超1万字 (2).docx"))
Log.d("MainActivity", "create doc time:${SystemClock.elapsedRealtime() - start}")
// val imageOptions = ImageSaveOptions(SaveFormat.JPEG)
// imageOptions.pageCount = doc.pageCount
for (i in 0 until doc.pageCount) {
// imageOptions.pageIndex = i
// doc.save(SD_PATH + “jpeg/output$i.jpeg”, imageOptions)
val pageInfo = doc.getPageInfo(i)
val width = pageInfo.widthInPoints.toInt()
val height = pageInfo.heightInPoints.toInt()
val bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888)
val canvas = Canvas(bitmap)
doc.renderToSize(i, canvas, 0f, 0f, width.toFloat(), height.toFloat())
canvas.setBitmap(null)
Log.d(“MainActivity”, “save index: $i”)
}
Log.d(“MainActivity”, “count time:${SystemClock.elapsedRealtime() - start}”)
请尝试以下将文档页面转换为单独的JPEG图像的标准方法:
Document doc = new Document(inputPath);
ImageSaveOptions options = new ImageSaveOptions(SaveFormat.JPEG);
options.setPageCount(1);
int pageCountDoc = doc.getPageCount();
for (int pageCount = 0; pageCount < pageCountDoc; pageCount++) {
options.setPageIndex(pageCount);
doc.save(outputPath + pageCount + ".jpg", options);
}