2017-10-28 5 views
0

Ich wollte ein Thumbnail für die erste Seite erzeugen. Versucht, mit der folgenden Seite zu generieren, kann nicht Bild mit guter Auflösung drucken, die das Bild mit guter Auflösung beim Zoomen anzeigen sollte. Selbst wenn wir die Option haben, den Daumennagel für die ersten paar Spalten zu drucken, wäre das in Ordnung. Bitte vorschlagen.Aspose: Thumbnail für erste Seite generieren

Workbook book = new Workbook(new ByteArrayInputStream(documentData)); 
    // Define ImageOrPrintOptions 
    ImageOrPrintOptions imgOptions = new ImageOrPrintOptions(); 
    // Set the vertical and horizontal resolution 
    imgOptions.setVerticalResolution(200); 
    imgOptions.setHorizontalResolution(200); 
    // Set the image's format 
    imgOptions.setImageFormat(ImageFormat.getJpeg()); 
    // One page per sheet is enabled 
    imgOptions.setOnePagePerSheet(true); 
    // Get the first worksheet 
    Worksheet sheet = book.getWorksheets().get(0); 
    // Render the sheet with respect to specified image/print options 
    SheetRender sr = new SheetRender(sheet, imgOptions); 
    // Render the image for the sheet 
    sr.toImage(0, "mythumb.jpg"); 
    // Creating Thumbnail 
    java.awt.Image img = ImageIO.read(new File("mythumb.jpg")).getScaledInstance(100, 100, BufferedImage.SCALE_SMOOTH); 
    BufferedImage img1 = new BufferedImage(100, 100, BufferedImage.TYPE_INT_RGB); 
    img1.createGraphics().drawImage(
    ImageIO.read(new File("mythumb.jpg")).getScaledInstance(100, 100, img.SCALE_SMOOTH), 0, 0, null); 
    return img1; 

Antwort

1

Die Qualität sollte in Ordnung sein, wenn Sie ein Vektor-Dateiformat verwenden. Beispielsweise können Sie versuchen, Emf als Ausgabebildformat für das Arbeitsblatt zu verwenden. Wenn Sie einen bestimmten Bereich (im Arbeitsblatt) wiedergeben möchten, der im Bild gerendert werden soll, sollten Sie versuchen, den gewünschten druckbaren Bereich vor dem Rendern des Arbeitsblatts festzulegen. Beachten Sie die Beispielzeilen, die Sie am Anfang des Codesegments hinzufügen können : zB Beispielcode:

........ 
// Access the first worksheet 
Worksheet worksheet = book.getWorksheets().get(0); 

// Set the print area with your desired range 
worksheet.getPageSetup().setPrintArea("E8:H15"); 

// Set all margins as 0 to get remove unnecessary white space 
worksheet.getPageSetup().setLeftMargin(0); 
worksheet.getPageSetup().setRightMargin(0); 
worksheet.getPageSetup().setTopMargin(0); 
worksheet.getPageSetup().setBottomMargin(0); 

.......... 

ich als Unterstützung Entwickler/Evangelist bei Aspose arbeite.