PPTX DOCX XLSX PDF ODP
Aspose.Imaging  pro Java
WMZ

Filtrovat WMZ přes Java

Vytvářejte své vlastní aplikace Java pro filtrování souborů WMZ pomocí rozhraní API na straně serveru.

Jak filtrovat soubory WMZ pomocí Java

I ten nejdokonalejší obraz lze dále vylepšit nebo proměnit ve zcela jiné a jedinečné umělecké dílo. Použijte filtry pro dosažení široké škály obrazových efektů. Můžete například zostřit obrázek nebo naopak přidat rozostření, vyhladit jej nebo odstranit barevný šum. Filtry jsou také neocenitelné, když chcete svému obrazu dodat jedinečnost. Chcete-li toho dosáhnout, použijte požadovaný efekt nebo zkombinujte různé efekty. Tento přístup umožňuje vylepšit barevné přechody, eliminovat šum a současně zvýšit ostrost okrajů objektů na fotografii. K filtrování souborů ve formátu WMZ použijeme Aspose.Imaging for Java API, které je funkčně bohaté, výkonné a snadno použitelné rozhraní API pro manipulaci a konverzi obrázků pro platformu Java. Jeho nejnovější verzi si můžete stáhnout přímo z Maven a nainstalovat do svého Maven -založený projekt přidáním následujících konfigurací do souboru pom.xml.

Úložiště

<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>

Závislost

<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-imaging</artifactId>
<version>version of aspose-imaging API</version>
<classifier>jdk16</classifier>
</dependency>

Kroky k filtrování WMZ přes Java

Abyste mohli vyzkoušet následující pracovní postup ve svém vlastním prostředí, potřebujete aspose-imaging-version-jdk16.jar .

  • Načíst soubory WMZ metodou Image.Load
  • Filtrovat obrázky;
  • Uložte komprimovaný obrázek na disk ve formátu podporovaném Aspose.Imaging

Požadavky na systém

Aspose.Imaging pro Java je podporován ve všech hlavních operačních systémech. Jen se ujistěte, že máte následující předpoklady.

  • Je nainstalován JDK 1.6 nebo vyšší.
 

Filtrovat obrázky ve formátu WMZ – Java

import com.aspose.imaging.IMultipageImage;
import com.aspose.imaging.Image;
import com.aspose.imaging.RasterImage;
import com.aspose.imaging.imageoptions.PngOptions;
import java.io.File;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;
import java.util.function.Consumer;
medianfilter();
public static void smallRectangularfilter()
{
filterImages(image ->
{
// https://apireference.aspose.com/imaging/java/com.aspose.imaging.imagefilters.filteroptions/SmallRectangularFilterOptions
Rectangle filterRect = new Rectangle(image.getWidth() / 6, image.getHeight() / 6, image.getWidth() * 2 / 3, image.getHeight() * 2 / 3);
image.filter(filterRect, new SmallRectangularFilterOptions());
}, "smallrectangular");
}
public static void bigRectangularfilter()
{
filterImages(image ->
{
// https://apireference.aspose.com/imaging/java/com.aspose.imaging.imagefilters.filteroptions/BigRectangularFilterOptions
Rectangle filterRect = new Rectangle(image.getWidth() / 6, image.getHeight() / 6, image.getWidth() * 2 / 3, image.getHeight() * 2 / 3);
image.filter(filterRect, new BigRectangularFilterOptions());
}, "bigrectangular");
}
public static void sharpenfilter()
{
filterImages(image ->
{
// https://apireference.aspose.com/imaging/java/com.aspose.imaging.imagefilters.filteroptions/SharpenFilterOptions
Rectangle filterRect = new Rectangle(image.getWidth() / 6, image.getHeight() / 6, image.getWidth() * 2 / 3, image.getHeight() * 2 / 3);
image.filter(filterRect, new SharpenFilterOptions());
}, "sharpen");
}
public static void motionWienerfilter()
{
filterImages(image ->
{
// https://apireference.aspose.com/imaging/java/com.aspose.imaging.imagefilters.filteroptions/MotionWienerFilterOptions
Rectangle filterRect = new Rectangle(image.getWidth() / 6, image.getHeight() / 6, image.getWidth() * 2 / 3, image.getHeight() * 2 / 3);
image.filter(filterRect, new MotionWienerFilterOptions(20, 2, 0));
}, "motionwiener");
}
public static void bilateralSmoothingfilter()
{
filterImages(image ->
{
// https://apireference.aspose.com/imaging/java/com.aspose.imaging.imagefilters.filteroptions/BilateralSmoothingFilterOptions
Rectangle filterRect = new Rectangle(image.getWidth() / 6, image.getHeight() / 6, image.getWidth() * 2 / 3, image.getHeight() * 2 / 3);
image.filter(filterRect, new BilateralSmoothingFilterOptions());
}, "bilateralsmoothing");
}
public static void gaussBlurfilter()
{
filterImages(image ->
{
// https://apireference.aspose.com/imaging/java/com.aspose.imaging.imagefilters.filteroptions/GaussianBlurFilterOptions
Rectangle filterRect = new Rectangle(image.getWidth() / 6, image.getHeight() / 6, image.getWidth() * 2 / 3, image.getHeight() * 2 / 3);
image.filter(filterRect, new GaussianBlurFilterOptions(5, 4));
}, "gaussblur");
}
public static void gaussWienerfilter()
{
filterImages(image ->
{
// https://apireference.aspose.com/imaging/java/com.aspose.imaging.imagefilters.filteroptions/GaussWienerFilterOptions
Rectangle filterRect = new Rectangle(image.getWidth() / 6, image.getHeight() / 6, image.getWidth() * 2 / 3, image.getHeight() * 2 / 3);
image.filter(filterRect, new GaussWienerFilterOptions(5, 5));
}, "gausswiener");
}
public static void medianfilter()
{
filterImages(image ->
{
// https://apireference.aspose.com/imaging/java/com.aspose.imaging.imagefilters.filteroptions/MedianFilterOptions
Rectangle filterRect = new Rectangle(image.getWidth() / 6, image.getHeight() / 6, image.getWidth() * 2 / 3, image.getHeight() * 2 / 3);
image.filter(filterRect, new MedianFilterOptions(20));
}, "median");
}
static String templatesFolder = "D:\\";
public static void filterImages(Consumer<RasterImage> doFilter, String filterName)
{
List<String> rasterFormats = Arrays.asList("jpg", "png", "bmp", "apng", "dicom",
"jp2", "j2k", "tga", "webp", "tif", "gif", "ico");
List<String> vectorFormats = Arrays.asList("svg", "otg", "odg", "eps", "wmf", "emf", "wmz", "emz", "cmx", "cdr");
List<String> allFormats = new LinkedList<>(rasterFormats);
allFormats.addAll(vectorFormats);
allFormats.forEach(
formatExt ->
{
String inputFile = templatesFolder + "template." + formatExt;
boolean isVectorFormat = vectorFormats.contains(formatExt);
//Need to rasterize vector formats before background remove
if (isVectorFormat)
{
inputFile = rasterizeVectorImage(formatExt, inputFile);
}
String outputFile = templatesFolder + String.format("%s_%s.png", filterName, formatExt);
System.out.println("Processing " + formatExt);
try (RasterImage image = (RasterImage) Image.load(inputFile))
{
doFilter.accept(image);
//If image is multipage save each page to png to demonstrate results
if (image instanceof IMultipageImage && ((IMultipageImage) image).getPageCount() > 1)
{
IMultipageImage multiPage = (IMultipageImage) image;
final int pageCount = multiPage.getPageCount();
final Image[] pages = multiPage.getPages();
for (int pageIndex = 0; pageIndex < pageCount; pageIndex++)
{
String fileName = String.format("%s_page%d_%s.png", filterName, pageIndex, formatExt);
pages[pageIndex].save(fileName, new PngOptions());
}
}
else
{
image.save(outputFile, new PngOptions());
}
}
//Remove rasterized vector image
if (isVectorFormat)
{
new File(inputFile).delete();
}
}
);
}
private static String rasterizeVectorImage(String formatExt, String inputFile)
{
String outputFile = templatesFolder + "rasterized."+ formatExt + ".png";
try (Image image = Image.load(inputFile))
{
image.save(outputFile, new PngOptions());
}
return outputFile;
}
 
  • O Aspose.Imaging pro Java API

    Aspose.Imaging API je řešení pro zpracování obrázků pro vytváření, úpravu, kreslení nebo konverzi obrázků (fotografií) v rámci aplikací. Nabízí: multiplatformní zpracování obrazu, mimo jiné včetně převodů mezi různými formáty obrázků (včetně jednotného vícestránkového nebo vícesnímkového zpracování obrazu), úpravy jako kreslení, práci s grafickými primitivy, transformace (změna velikosti, oříznutí, převrácení a otočení). binarizace, stupně šedi, úprava), pokročilé funkce pro manipulaci s obrázky (filtrování, rozklad, maskování, vyrovnání sklonu) a strategie optimalizace paměti. Je to samostatná knihovna a není závislá na žádném softwaru pro operace s obrázky. V rámci projektů lze snadno přidat vysoce výkonné funkce pro konverzi obrázků s nativními rozhraními API. Jedná se o 100% soukromá on-premise API a obrázky se zpracovávají na vašich serverech.

    Filtrujte WMZ prostřednictvím online aplikace

    Filtrujte dokumenty ve formátu WMZ na našem webu s živými ukázkami . Živé demo má následující výhody

      Není třeba nic stahovat ani nastavovat
      Není třeba psát žádný kód
      Stačí nahrát své soubory ve formátu WMZ a stisknout tlačítko Filtrovat nyní.
      Okamžitě získejte odkaz ke stažení výsledného souboru

    WMZ co je WMZ Formát souboru

    WMZ je přípona souboru pro formát souboru skinu v/pro/používaný Windows Media Player. Soubor WMZ je v podstatě zazipovaný soubor WMF ve formátu XML.

    Přečtěte si více

    Další podporované formáty filtrů

    Pomocí Java lze snadno filtrovat různé formáty včetně.

    APNG (Animovaná přenosná síťová grafika)
    BMP (Bitmapový obrázek)
    ICO (ikona Windows)
    JPG (Společná skupina fotografických expertů)
    JPEG (Společná skupina fotografických expertů)
    DIB (Bitmap nezávislý na zařízení)
    DICOM (Digitální zobrazování a komunikace)
    DJVU (Grafický formát)
    DNG (Obrázek z digitálního fotoaparátu)
    EMF (Vylepšený formát metasouborů)
    EMZ (Windows Compressed Enhanced Metafile)
    GIF (Grafický výměnný formát)
    JP2 (JPEG 2000)
    J2K (Wavelet Compressed Image)
    PNG (Přenosná síťová grafika)
    TIFF (Formát tagovaného obrázku)
    TIF (Formát tagovaného obrázku)
    WEBP (Rastrový webový obrázek)
    WMF (Microsoft Windows Metafile)
    TGA (Grafika Targa)
    SVG (Škálovatelná vektorová grafika)
    EPS (Encapsulated PostScript Language)
    CDR (Vektorové Kreslení Obrázek)
    CMX (Obrázek Corel Exchange)
    OTG (OpenDocument Standard)
    ODG (Formát Apache OpenOffice Draw)