com.aspose.words

Interface IWarningCallback

Implement this interface if you want to have your own custom method called to capture loss of fidelity warnings that can occur during document loading or saving.

Example:

Shows added fallback to bitmap rendering and changing type of warnings about unsupported metafile records.
public void handleBinaryRasterWarnings() throws Exception {
    Document doc = new Document(getMyDir() + "WMF with image.docx");

    MetafileRenderingOptions metafileRenderingOptions = new MetafileRenderingOptions();
    metafileRenderingOptions.setEmulateRasterOperations(false);
    metafileRenderingOptions.setRenderingMode(MetafileRenderingMode.VECTOR_WITH_FALLBACK);

    // If Aspose.Words cannot correctly render some of the metafile records to vector graphics then Aspose.Words renders this metafile to a bitmap
    HandleDocumentWarnings callback = new HandleDocumentWarnings();
    doc.setWarningCallback(callback);

    PdfSaveOptions saveOptions = new PdfSaveOptions();
    saveOptions.setMetafileRenderingOptions(metafileRenderingOptions);

    doc.save(getArtifactsDir() + "PdfSaveOptions.HandleBinaryRasterWarnings.pdf", saveOptions);

    Assert.assertEquals(callback.mWarnings.getCount(), 1);
    Assert.assertTrue(callback.mWarnings.get(0).getDescription().contains("R2_XORPEN"));
}

public static class HandleDocumentWarnings implements IWarningCallback {
    /**
     * Our callback only needs to implement the "Warning" method. This method is called whenever there is a
     * potential issue during document processing. The callback can be set to listen for warnings generated during document
     * load and/or document save.
     */
    public void warning(final WarningInfo info) {
        //For now type of warnings about unsupported metafile records changed from DataLoss/UnexpectedContent to MinorFormattingLoss
        if (info.getWarningType() == WarningType.MINOR_FORMATTING_LOSS) {
            System.out.println("Unsupported operation: " + info.getDescription());
            this.mWarnings.warning(info);
        }
    }

    public WarningInfoCollection mWarnings = new WarningInfoCollection();
}

Method Summary
abstract voidwarning(WarningInfo info)
Aspose.Words invokes this method when it encounters some issue during document loading or saving that might result in loss of formatting or data fidelity.
 

    • Method Detail

      • warning

        public abstract void warning(WarningInfo info)
        Aspose.Words invokes this method when it encounters some issue during document loading or saving that might result in loss of formatting or data fidelity.