Принцип состоит в том, чтобы преобразовать PPT в PDF, а затем использовать изображения для производства PDF. и может быть решено, просто поиск суффикса PPT. Некоторые китайские коробки.
Baidu и Google давно ищут, и некоторые люди сказали, что некоторые люди сказали, что это была ошибка на официальном сайте Apache, но они ответили, что это была проблема шрифта. Эта проблема сама по себе и прочитайте оригинальный шрифт и установите его на текущий шрифт, но производительность должна быть много. Почти никаких готовых решений в Интернете. Я также попытался шаг за шагом и, наконец, нашел решение.
PPTX перед проблемой преобразуется в картинку:
После разрешения PPTX преобразуется в картинку:
Решение:
Прочитайте каждую форму и преобразуйте текст в унифицированный шрифт.
для (xslfshape форма: Slide [i] .getShapes ()) {if (exantyf xslftextshape) {xslftextshape txshape = (xslftextshape); + txshape.getShapeName ()); ; Полный код заключается в следующем (за исключением приведенного выше собственного решения, большая часть его является кодом на Stackoverflow):
Public Statice Convertppttopdf (String Sourcepath, String Destination, String FileType) PDFDOCUMENT = новый документ (); SLIDEIMAGE = NULL; ppt .getslides (); = 0; k]. ; (PGSI ZE 0, pgsize. True); SetPagesize (новый прямоугольник ((float) pgsize.getWidth (), (float) pgsize.getheight ()); i ++) {for (xslfs hape shape: slide [i] .getshapes ()) {if (exantef of xslftextshape) {xslftextshape txshape = (xslftextshape) + ":" + txshape. TextrunList = TextPara.getTexTruns (); ) Math.ceil (pgsize.height * Zoom), BufferedImage.Type_int_rgb); Float (0, 0, pgsize.width, pgsize.height)); ;/ Javax. }} PDF Document.Add (таблица); Конфигурация Maven:
<dependency> <groupid> org.apache.poi </GroupId> <artifactid> poi </artifactid> <!-<sersive> 3.13 </version>-> <версия> 3.9 </version> </depence y > <Depective> <groupid> org.apache.poi </GroupId> <artifactid> poi-ooxml </artifactid> <!-<sersive> 3.10-final </version>-> <версия> 3.9 </versi on> </gethipency> <dehyederence> <groupid> com.ithoutpdf </groupid> <artifactid> ithextpdf </artifactid> <serse> 5.5.7 </version> </depertive> <DeyEdency> <groupId> com.itextpdf .tool </GroupId> <artifactId> xmlWorker </artifactid> <sersion> 5.5.7 </version> </degyfic> <deyedency> <groupid> org.apache.poi </groupid> <artif ctid> poi-scratchpad </artifactid> <!-<версия> 3.12 </version>-> <sersion> 3.9 </version> </deperency>
Выше представлено решение проблемы искаженного китайца в Java для реализации PPT в PDF, который происходит в Java.