Я в настоящее время изо всех сил пытаюсь преобразовать PDF в файл TIFF, который я могу затем отправить факс через Asterisk. Полем Однако в документации указываются некоторые настройки ключей для использования: < /p>
Алгоритм сжатия: группа CCITT 3 или CCITT Group 4
Вертикальное разрешение: 98 DPI (стандарт) или 196 DPI (высокий)
Вот ссылка на документацию: PDF Инструменты SDK Профили преобразования < /p>
Я уже настроил эти настройки, и когда я проверяю выход с Tiffinfo на Linux, все кажется нормальным. Однако Asterisk все еще не может отправить факс. Поскольку эти настройки являются стандартными для факсимирования и не специально для Asterisk, я надеюсь, что кто -то может сказать мне, что мне не хватает или сделать неправильно. < /P>
ниже мой код Java, и я ' D действительно ценю любое руководство. < /p>
Заранее! < /p>
public static InputStream toTIFF(InputStream pdfInputStream) {
PDDocument document = null;
ImageOutputStream imageOutputStream = null;
ByteArrayOutputStream pdfOutputStream = new ByteArrayOutputStream();
try {
document = Loader.loadPDF(IOUtils.toByteArray(pdfInputStream));
imageOutputStream = ImageIO.createImageOutputStream(pdfOutputStream);
Iterator writers = ImageIO.getImageWritersByFormatName("tiff");
ImageWriter writer = writers.next();
writer.setOutput(imageOutputStream);
ImageWriteParam writeParam = writer.getDefaultWriteParam();
writeParam.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);
writeParam.setCompressionType("CCITT T.6");
PDFRenderer pdfRenderer = new PDFRenderer(document);
writer.prepareWriteSequence(null);
for (int pageIndex = 0; pageIndex < document.getNumberOfPages(); pageIndex++) {
BufferedImage image = pdfRenderer.renderImageWithDPI(pageIndex, 98, ImageType.BINARY);
BufferedImage bwImage = new BufferedImage(image.getWidth(), image.getHeight(),
BufferedImage.TYPE_BYTE_BINARY);
Graphics2D g2d = bwImage.createGraphics();
g2d.drawImage(image, 0, 0, Color.WHITE, null);
g2d.dispose();
IIOImage ioImage = new IIOImage(bwImage, null, null);
writer.writeToSequence(ioImage, writeParam);
}
writer.endWriteSequence();
writer.dispose();
document.close();
imageOutputStream.close();
} catch (Exception e) {
e.printStackTrace();
}
return new ByteArrayInputStream(pdfOutputStream.toByteArray());
}
Подробнее здесь: https://stackoverflow.com/questions/794 ... for-faxing
Преобразование PDF в TIFF для факсимирования ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Преобразование нескольких изображений TIFF в PDF с использованием PDFSHARP
Anonymous » » в форуме C# - 0 Ответы
- 8 Просмотры
-
Последнее сообщение Anonymous
-