Merge branch 'main' into add-hindi-language
This commit is contained in:
commit
d63519bbf4
2 changed files with 12 additions and 14 deletions
|
@ -267,7 +267,7 @@ For API usage you must provide a header with 'X-API-Key' and the associated API
|
||||||
- Fill forms mannual and automatic
|
- Fill forms mannual and automatic
|
||||||
|
|
||||||
### Q2: Why is my application downloading .htm files?
|
### Q2: Why is my application downloading .htm files?
|
||||||
This is a issue caused commonly by your NGINX configuration. The default file upload size for NGINX is 1MB, you need to add the following in your Nginx sites-available file. ``client_max_body_size SIZE;`` Where "SIZE" is 50M for example for 50MB files.
|
This is an issue caused commonly by your NGINX configuration. The default file upload size for NGINX is 1MB, you need to add the following in your Nginx sites-available file. ``client_max_body_size SIZE;`` Where "SIZE" is 50M for example for 50MB files.
|
||||||
|
|
||||||
### Q3: Why is my download timing out
|
### Q3: Why is my download timing out
|
||||||
NGINX has timeout values by default so if you are running Stirling-PDF behind NGINX you may need to set a timeout value such as adding the config ``proxy_read_timeout 3600;``
|
NGINX has timeout values by default so if you are running Stirling-PDF behind NGINX you may need to set a timeout value such as adding the config ``proxy_read_timeout 3600;``
|
||||||
|
|
|
@ -203,12 +203,6 @@ public class PdfUtils {
|
||||||
try (PDDocument document = PDDocument.load(new ByteArrayInputStream(inputStream))) {
|
try (PDDocument document = PDDocument.load(new ByteArrayInputStream(inputStream))) {
|
||||||
PDFRenderer pdfRenderer = new PDFRenderer(document);
|
PDFRenderer pdfRenderer = new PDFRenderer(document);
|
||||||
int pageCount = document.getNumberOfPages();
|
int pageCount = document.getNumberOfPages();
|
||||||
List<BufferedImage> images = new ArrayList<>();
|
|
||||||
|
|
||||||
// Create images of all pages
|
|
||||||
for (int i = 0; i < pageCount; i++) {
|
|
||||||
images.add(pdfRenderer.renderImageWithDPI(i, DPI, colorType));
|
|
||||||
}
|
|
||||||
|
|
||||||
// Create a ByteArrayOutputStream to save the image(s) to
|
// Create a ByteArrayOutputStream to save the image(s) to
|
||||||
ByteArrayOutputStream baos = new ByteArrayOutputStream();
|
ByteArrayOutputStream baos = new ByteArrayOutputStream();
|
||||||
|
@ -226,8 +220,8 @@ public class PdfUtils {
|
||||||
writer.setOutput(ios);
|
writer.setOutput(ios);
|
||||||
writer.prepareWriteSequence(null);
|
writer.prepareWriteSequence(null);
|
||||||
|
|
||||||
for (int i = 0; i < images.size(); ++i) {
|
for (int i = 0; i < pageCount; ++i) {
|
||||||
BufferedImage image = images.get(i);
|
BufferedImage image = pdfRenderer.renderImageWithDPI(i, DPI, colorType);
|
||||||
writer.writeToSequence(new IIOImage(image, null, null), param);
|
writer.writeToSequence(new IIOImage(image, null, null), param);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -237,11 +231,15 @@ public class PdfUtils {
|
||||||
writer.dispose();
|
writer.dispose();
|
||||||
} else {
|
} else {
|
||||||
// Combine all images into a single big image
|
// Combine all images into a single big image
|
||||||
BufferedImage combined = new BufferedImage(images.get(0).getWidth(), images.get(0).getHeight() * pageCount, BufferedImage.TYPE_INT_RGB);
|
BufferedImage image = pdfRenderer.renderImageWithDPI(0, DPI, colorType);
|
||||||
|
BufferedImage combined = new BufferedImage(image.getWidth(), image.getHeight() * pageCount, BufferedImage.TYPE_INT_RGB);
|
||||||
Graphics g = combined.getGraphics();
|
Graphics g = combined.getGraphics();
|
||||||
|
|
||||||
for (int i = 0; i < images.size(); i++) {
|
for (int i = 0; i < pageCount; ++i) {
|
||||||
g.drawImage(images.get(i), 0, i * images.get(0).getHeight(), null);
|
if (i != 0) {
|
||||||
|
image = pdfRenderer.renderImageWithDPI(i, DPI, colorType);
|
||||||
|
}
|
||||||
|
g.drawImage(image, 0, i * image.getHeight(), null);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Write the image to the output stream
|
// Write the image to the output stream
|
||||||
|
@ -253,8 +251,8 @@ public class PdfUtils {
|
||||||
} else {
|
} else {
|
||||||
// Zip the images and return as byte array
|
// Zip the images and return as byte array
|
||||||
try (ZipOutputStream zos = new ZipOutputStream(baos)) {
|
try (ZipOutputStream zos = new ZipOutputStream(baos)) {
|
||||||
for (int i = 0; i < images.size(); i++) {
|
for (int i = 0; i < pageCount; ++i) {
|
||||||
BufferedImage image = images.get(i);
|
BufferedImage image = pdfRenderer.renderImageWithDPI(i, DPI, colorType);
|
||||||
try (ByteArrayOutputStream baosImage = new ByteArrayOutputStream()) {
|
try (ByteArrayOutputStream baosImage = new ByteArrayOutputStream()) {
|
||||||
ImageIO.write(image, imageType, baosImage);
|
ImageIO.write(image, imageType, baosImage);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue