Afbeeldingen opslaan uit documenten in Aspose.Words voor Java

Inleiding tot het opslaan van afbeeldingen uit documenten in Aspose.Words voor Java

In deze tutorial gaan we onderzoeken hoe je afbeeldingen uit documenten kunt opslaan met Aspose.Words voor Java. We behandelen verschillende scenario’s en aanpassingsopties voor het opslaan van afbeeldingen. Deze gids biedt stapsgewijze instructies met broncodevoorbeelden.

Vereisten

Voordat u begint, moet u ervoor zorgen dat u de Aspose.Words for Java-bibliotheek in uw project hebt geïntegreerd. U kunt deze downloaden vanhier.

Stap 1: Afbeeldingen opslaan als TIFF met drempelcontrole

Om afbeeldingen op te slaan in TIFF-formaat met drempelcontrole, volgt u deze stappen:

Document doc = new Document("Your Directory Path" + "Rendering.docx");
ImageSaveOptions saveOptions = new ImageSaveOptions(SaveFormat.TIFF);
saveOptions.setTiffCompression(TiffCompression.CCITT_3);
saveOptions.setImageColorMode(ImageColorMode.GRAYSCALE);
saveOptions.setTiffBinarizationMethod(ImageBinarizationMethod.FLOYD_STEINBERG_DITHERING);
saveOptions.setThresholdForFloydSteinbergDithering((byte) 254);
doc.save("Your Directory Path" + "ThresholdControlledImage.tiff", saveOptions);

Stap 2: Een specifieke pagina opslaan als een TIFF met meerdere pagina’s

Om een specifieke pagina als een TIFF-bestand met meerdere pagina’s op te slaan, gebruikt u de volgende code:

Document doc = new Document("Your Directory Path" + "Rendering.docx");
ImageSaveOptions saveOptions = new ImageSaveOptions(SaveFormat.TIFF);
saveOptions.setPageSet(new PageSet(new PageRange(0, 1)));
saveOptions.setTiffCompression(TiffCompression.CCITT_4);
saveOptions.setResolution(160f);
doc.save("Your Directory Path" + "SpecificPageMultipage.tiff", saveOptions);

Stap 3: Afbeeldingen opslaan als 1 BPP geïndexeerde PNG

Om afbeeldingen op te slaan als 1 BPP geïndexeerde PNG, volgt u deze stappen:

Document doc = new Document("Your Directory Path" + "Rendering.docx");
ImageSaveOptions saveOptions = new ImageSaveOptions(SaveFormat.PNG);
saveOptions.setPageSet(new PageSet(1));
saveOptions.setImageColorMode(ImageColorMode.BLACK_AND_WHITE);
saveOptions.setPixelFormat(ImagePixelFormat.FORMAT_1_BPP_INDEXED);
doc.save("Your Directory Path" + "1BPPIndexed.png", saveOptions);

Stap 4: Een pagina opslaan als JPEG met aanpassing

Om een specifieke pagina als JPEG op te slaan met aanpassingsopties, gebruikt u deze code:

Document doc = new Document("Your Directory Path" + "Rendering.docx");
ImageSaveOptions options = new ImageSaveOptions(SaveFormat.JPEG);
options.setPageSet(new PageSet(0));
options.setImageBrightness(0.3f);
options.setImageContrast(0.7f);
options.setHorizontalResolution(72f);
doc.save("Your Directory Path" + "CustomizedJPEG.jpeg", options);

Stap 5: Gebruik van de callback voor het opslaan van pagina’s

U kunt een callback gebruiken om het opslaan van pagina’s aan te passen. Hier is een voorbeeld:

Document doc = new Document("Your Directory Path" + "Rendering.docx");
ImageSaveOptions imageSaveOptions = new ImageSaveOptions(SaveFormat.PNG);
imageSaveOptions.setPageSet(new PageSet(new PageRange(0, doc.getPageCount() - 1)));
imageSaveOptions.setPageSavingCallback(new HandlePageSavingCallback());
doc.save("Your Directory Path" + "PageSavingCallback.png", imageSaveOptions);
private static class HandlePageSavingCallback implements IPageSavingCallback {
    public void pageSaving(PageSavingArgs args) {
        args.setPageFileName(MessageFormat.format("Your Directory Path" + "Page_{0}.png", args.getPageIndex()));
    }
}

Volledige broncode voor het opslaan van afbeeldingen uit documenten in Aspose.Words voor Java

public void exposeThresholdControlForTiffBinarization() throws Exception
{
	Document doc = new Document("Your Directory Path" + "Rendering.docx");
	ImageSaveOptions saveOptions = new ImageSaveOptions(SaveFormat.TIFF);
	{
		saveOptions.setTiffCompression(TiffCompression.CCITT_3);
		saveOptions.setImageColorMode(ImageColorMode.GRAYSCALE);
		saveOptions.setTiffBinarizationMethod(ImageBinarizationMethod.FLOYD_STEINBERG_DITHERING);
		saveOptions.setThresholdForFloydSteinbergDithering((byte) 254);
	}
	doc.save("Your Directory Path" + "WorkingWithImageSaveOptions.ExposeThresholdControlForTiffBinarization.tiff", saveOptions);
}
@Test
public void getTiffPageRange() throws Exception
{
	Document doc = new Document("Your Directory Path" + "Rendering.docx");
	doc.save("Your Directory Path" + "WorkingWithImageSaveOptions.MultipageTiff.tiff");
	ImageSaveOptions saveOptions = new ImageSaveOptions(SaveFormat.TIFF);
	{
		saveOptions.setPageSet(new PageSet(new PageRange(0, 1))); saveOptions.setTiffCompression(TiffCompression.CCITT_4); saveOptions.setResolution(160f);
	}
	doc.save("Your Directory Path" + "WorkingWithImageSaveOptions.GetTiffPageRange.tiff", saveOptions);
}
@Test
public void format1BppIndexed() throws Exception
{
	Document doc = new Document("Your Directory Path" + "Rendering.docx");
	ImageSaveOptions saveOptions = new ImageSaveOptions(SaveFormat.PNG);
	{
		saveOptions.setPageSet(new PageSet(1));
		saveOptions.setImageColorMode(ImageColorMode.BLACK_AND_WHITE);
		saveOptions.setPixelFormat(ImagePixelFormat.FORMAT_1_BPP_INDEXED);
	}
	doc.save("Your Directory Path" + "WorkingWithImageSaveOptions.Format1BppIndexed.Png", saveOptions);
}
@Test
public void getJpegPageRange() throws Exception
{
	Document doc = new Document("Your Directory Path" + "Rendering.docx");
	ImageSaveOptions options = new ImageSaveOptions(SaveFormat.JPEG);
	// Stel de "PageSet" in op "0" om alleen de eerste pagina van een document te converteren.
	options.setPageSet(new PageSet(0));
	// Wijzig de helderheid en het contrast van de afbeelding.
	// Beide hebben een schaal van 0-1 en staan standaard op 0,5.
	options.setImageBrightness(0.3f);
	options.setImageContrast(0.7f);
	// Wijzig de horizontale resolutie.
	// De standaardwaarde voor deze eigenschappen is 96,0, voor een resolutie van 96 dpi.
	options.setHorizontalResolution(72f);
	doc.save("Your Directory Path" + "WorkingWithImageSaveOptions.GetJpegPageRange.jpeg", options);
}
@Test
public static void pageSavingCallback() throws Exception
{
	Document doc = new Document("Your Directory Path" + "Rendering.docx");
	ImageSaveOptions imageSaveOptions = new ImageSaveOptions(SaveFormat.PNG);
	{
		imageSaveOptions.setPageSet(new PageSet(new PageRange(0, doc.getPageCount() - 1)));
		imageSaveOptions.setPageSavingCallback(new HandlePageSavingCallback());
	}
	doc.save("Your Directory Path" + "WorkingWithImageSaveOptions.PageSavingCallback.png", imageSaveOptions);
}
private static class HandlePageSavingCallback implements IPageSavingCallback
{
	public void pageSaving(PageSavingArgs args)
	{
		args.setPageFileName(MessageFormat.format("Your Directory Path" + "Page_{0}.png", args.getPageIndex()));
	}

Conclusie

hebt geleerd hoe u afbeeldingen uit documenten kunt opslaan met Aspose.Words voor Java. Deze voorbeelden laten verschillende aanpassingsopties voor het opslaan van afbeeldingen zien, waaronder opmaak, compressie en callbackgebruik. Ontdek meer mogelijkheden met de krachtige mogelijkheden van Aspose.Words voor Java.

Veelgestelde vragen

Hoe wijzig ik het afbeeldingsformaat bij het opslaan met Aspose.Words voor Java?

U kunt het afbeeldingsformaat wijzigen door het gewenste formaat in het veld op te geven.ImageSaveOptions Om bijvoorbeeld als PNG op te slaan, gebruikt uSaveFormat.PNG zoals weergegeven in de code:

ImageSaveOptions saveOptions = new ImageSaveOptions(SaveFormat.PNG);

Kan ik de compressie-instellingen voor TIFF-afbeeldingen aanpassen?

Ja, u kunt de compressie-instellingen voor TIFF-afbeeldingen aanpassen. Om bijvoorbeeld de compressiemethode in te stellen op CCITT_3, gebruikt u de volgende code:

saveOptions.setTiffCompression(TiffCompression.CCITT_3);

Hoe kan ik een specifieke pagina uit een document opslaan als een aparte afbeelding?

Om een specifieke pagina als afbeelding op te slaan, gebruikt u desetPageSetmethode inImageSaveOptions Om bijvoorbeeld alleen de eerste pagina op te slaan, stelt u dePageSet naarnew PageSet(0).

saveOptions.setPageSet(new PageSet(0)); // Sla de eerste pagina op als afbeelding

Hoe pas ik aangepaste instellingen toe op JPEG-afbeeldingen bij het opslaan?

kunt aangepaste instellingen toepassen op JPEG-afbeeldingen met behulp vanImageSaveOptions. Pas eigenschappen aan zoals helderheid, contrast en resolutie. Om bijvoorbeeld de helderheid te veranderen naar 0,3 en het contrast naar 0,7, gebruikt u deze code:

options.setImageBrightness(0.3f);
options.setImageContrast(0.7f);

Hoe kan ik een callback gebruiken om het opslaan van afbeeldingen aan te passen?

Om een callback te gebruiken voor het aanpassen van het opslaan van afbeeldingen, stelt u dePageSavingCallback inImageSaveOptions . Maak een klasse die deIPageSavingCallback interface en overschrijf depageSaving methode.

imageSaveOptions.setPageSavingCallback(new HandlePageSavingCallback());

Maak vervolgens een klasse die deIPageSavingCallback interface en pas de bestandsnaam en locatie aan in depageSaving methode.

private static class HandlePageSavingCallback implements IPageSavingCallback {
    public void pageSaving(PageSavingArgs args) {
        args.setPageFileName(MessageFormat.format("Your Directory Path" + "Page_{0}.png", args.getPageIndex()));
    }
}