Menyimpan Gambar dari Dokumen di Aspose.Words untuk Java
Pengantar Menyimpan Gambar dari Dokumen di Aspose.Words untuk Java
Dalam tutorial ini, kita akan menjelajahi cara menyimpan gambar dari dokumen menggunakan Aspose.Words untuk Java. Kita akan membahas berbagai skenario dan opsi penyesuaian untuk penyimpanan gambar. Panduan ini menyediakan petunjuk langkah demi langkah dengan contoh kode sumber.
Prasyarat
Sebelum memulai, pastikan Anda telah mengintegrasikan pustaka Aspose.Words for Java ke dalam proyek Anda. Anda dapat mengunduhnya dariDi Sini.
Langkah 1: Menyimpan Gambar sebagai TIFF dengan Kontrol Ambang Batas
Untuk menyimpan gambar dalam format TIFF dengan kontrol ambang batas, ikuti langkah-langkah berikut:
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);
Langkah 2: Menyimpan Halaman Tertentu sebagai TIFF Multihalaman
Untuk menyimpan halaman tertentu sebagai TIFF multihalaman, gunakan kode berikut:
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);
Langkah 3: Menyimpan Gambar sebagai PNG Terindeks 1 BPP
Untuk menyimpan gambar sebagai PNG berindeks 1 BPP, ikuti langkah-langkah berikut:
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);
Langkah 4: Menyimpan Halaman sebagai JPEG dengan Kustomisasi
Untuk menyimpan halaman tertentu sebagai JPEG dengan opsi penyesuaian, gunakan kode ini:
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);
Langkah 5: Menggunakan Page Saving Callback
Anda dapat menggunakan panggilan balik untuk menyesuaikan penyimpanan halaman. Berikut contohnya:
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()));
}
}
Kode Sumber Lengkap Untuk Menyimpan Gambar dari Dokumen di Aspose.Words untuk 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);
// Atur "PageSet" ke "0" untuk mengonversi hanya halaman pertama dokumen.
options.setPageSet(new PageSet(0));
// Ubah kecerahan dan kontras gambar.
// Keduanya berada pada skala 0-1 dan secara default berada pada 0,5.
options.setImageBrightness(0.3f);
options.setImageContrast(0.7f);
// Ubah resolusi horizontal.
// Nilai default untuk properti ini adalah 96.0, untuk resolusi 96dpi.
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()));
}
Kesimpulan
Anda telah mempelajari cara menyimpan gambar dari dokumen menggunakan Aspose.Words untuk Java. Contoh-contoh ini menunjukkan berbagai opsi penyesuaian untuk penyimpanan gambar, termasuk format, kompresi, dan penggunaan callback. Jelajahi lebih banyak kemungkinan dengan kemampuan canggih Aspose.Words untuk Java.
Pertanyaan yang Sering Diajukan
Bagaimana cara mengubah format gambar saat menyimpan dengan Aspose.Words untuk Java?
Anda dapat mengubah format gambar dengan menentukan format yang diinginkan diImageSaveOptions
Misalnya, untuk menyimpan sebagai PNG, gunakanSaveFormat.PNG
seperti yang ditunjukkan dalam kode:
ImageSaveOptions saveOptions = new ImageSaveOptions(SaveFormat.PNG);
Dapatkah saya menyesuaikan pengaturan kompresi untuk gambar TIFF?
Ya, Anda dapat menyesuaikan pengaturan kompresi gambar TIFF. Misalnya, untuk mengatur metode kompresi ke CCITT_3, gunakan kode berikut:
saveOptions.setTiffCompression(TiffCompression.CCITT_3);
Bagaimana cara menyimpan halaman tertentu dari dokumen sebagai gambar terpisah?
Untuk menyimpan halaman tertentu sebagai gambar, gunakansetPageSet
metode dalamImageSaveOptions
Misalnya, untuk menyimpan hanya halaman pertama, aturPageSet
kenew PageSet(0)
.
saveOptions.setPageSet(new PageSet(0)); // Simpan halaman pertama sebagai gambar
Bagaimana cara menerapkan pengaturan khusus pada gambar JPEG saat menyimpan?
Anda dapat menerapkan pengaturan khusus ke gambar JPEG menggunakanImageSaveOptions
. Sesuaikan properti seperti kecerahan, kontras, dan resolusi. Misalnya, untuk mengubah kecerahan menjadi 0,3 dan kontras menjadi 0,7, gunakan kode ini:
options.setImageBrightness(0.3f);
options.setImageContrast(0.7f);
Bagaimana saya dapat menggunakan panggilan balik untuk menyesuaikan penyimpanan gambar?
Untuk menggunakan panggilan balik untuk menyesuaikan penyimpanan gambar, aturPageSavingCallback
di dalamImageSaveOptions
. Buatlah kelas yang mengimplementasikanIPageSavingCallback
antarmuka dan menggantipageSaving
metode.
imageSaveOptions.setPageSavingCallback(new HandlePageSavingCallback());
Kemudian, buatlah kelas yang mengimplementasikanIPageSavingCallback
antarmuka dan menyesuaikan nama file dan lokasi dipageSaving
metode.
private static class HandlePageSavingCallback implements IPageSavingCallback {
public void pageSaving(PageSavingArgs args) {
args.setPageFileName(MessageFormat.format("Your Directory Path" + "Page_{0}.png", args.getPageIndex()));
}
}