Salvando imagens de documentos no Aspose.Words para Java
Introdução ao salvamento de imagens de documentos no Aspose.Words para Java
Neste tutorial, exploraremos como salvar imagens de documentos usando Aspose.Words para Java. Cobriremos vários cenários e opções de personalização para salvar imagens. Este guia fornece instruções passo a passo com exemplos de código-fonte.
Pré-requisitos
Antes de começar, certifique-se de ter a biblioteca Aspose.Words for Java integrada ao seu projeto. Você pode baixá-la emaqui.
Etapa 1: salvando imagens como TIFF com controle de limite
Para salvar imagens no formato TIFF com controle de limite, siga estas etapas:
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);
Etapa 2: salvando uma página específica como TIFF de várias páginas
Para salvar uma página específica como um TIFF de várias páginas, use o seguinte código:
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);
Etapa 3: salvando imagens como PNG indexado 1 BPP
Para salvar imagens como PNG indexado em 1 BPP, siga estas etapas:
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);
Etapa 4: salvando uma página como JPEG com personalização
Para salvar uma página específica como JPEG com opções de personalização, use este código:
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);
Etapa 5: usando o retorno de chamada de salvamento de página
Você pode usar um retorno de chamada para personalizar o salvamento de página. Aqui está um exemplo:
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()));
}
}
Código fonte completo para salvar imagens de documentos no Aspose.Words para 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);
// Defina o "PageSet" como "0" para converter apenas a primeira página de um documento.
options.setPageSet(new PageSet(0));
// Altere o brilho e o contraste da imagem.
// Ambos estão em uma escala de 0 a 1 e o padrão é 0,5.
options.setImageBrightness(0.3f);
options.setImageContrast(0.7f);
// Alterar a resolução horizontal.
// O valor padrão para essas propriedades é 96,0, para uma resolução de 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()));
}
Conclusão
Você aprendeu como salvar imagens de documentos usando o Aspose.Words para Java. Esses exemplos demonstram várias opções de personalização para salvar imagens, incluindo formato, compactação e uso de retorno de chamada. Explore mais possibilidades com os recursos poderosos do Aspose.Words para Java.
Perguntas frequentes
Como altero o formato da imagem ao salvar com o Aspose.Words para Java?
Você pode alterar o formato da imagem especificando o formato desejado noImageSaveOptions
. Por exemplo, para salvar como PNG, useSaveFormat.PNG
conforme mostrado no código:
ImageSaveOptions saveOptions = new ImageSaveOptions(SaveFormat.PNG);
Posso personalizar as configurações de compactação para imagens TIFF?
Sim, você pode personalizar as configurações de compactação de imagem TIFF. Por exemplo, para definir o método de compactação como CCITT_3, use o seguinte código:
saveOptions.setTiffCompression(TiffCompression.CCITT_3);
Como posso salvar uma página específica de um documento como uma imagem separada?
Para salvar uma página específica como uma imagem, use osetPageSet
método emImageSaveOptions
. Por exemplo, para salvar apenas a primeira página, defina oPageSet
paranew PageSet(0)
.
saveOptions.setPageSet(new PageSet(0)); // Salvar a primeira página como uma imagem
Como aplico configurações personalizadas a imagens JPEG ao salvá-las?
Você pode aplicar configurações personalizadas a imagens JPEG usandoImageSaveOptions
. Ajuste propriedades como brilho, contraste e resolução. Por exemplo, para alterar o brilho para 0,3 e o contraste para 0,7, use este código:
options.setImageBrightness(0.3f);
options.setImageContrast(0.7f);
Como posso usar um retorno de chamada para personalizar o salvamento de imagens?
Para usar um retorno de chamada para personalizar o salvamento de imagens, defina oPageSavingCallback
emImageSaveOptions
. Crie uma classe que implemente oIPageSavingCallback
interface e substituir opageSaving
método.
imageSaveOptions.setPageSavingCallback(new HandlePageSavingCallback());
Em seguida, crie uma classe que implemente oIPageSavingCallback
interface e personalizar o nome do arquivo e o local nopageSaving
método.
private static class HandlePageSavingCallback implements IPageSavingCallback {
public void pageSaving(PageSavingArgs args) {
args.setPageFileName(MessageFormat.format("Your Directory Path" + "Page_{0}.png", args.getPageIndex()));
}
}