public interface IFontSavingCallback
Example:
public void saveHtmlExportFonts() throws Exception {
Document doc = new Document(getMyDir() + "Rendering.doc");
// Set the option to export font resources.
HtmlSaveOptions options = new HtmlSaveOptions(SaveFormat.MHTML);
options.setExportFontResources(true);
// Create and pass the object which implements the handler methods.
options.setFontSavingCallback(new HandleFontSaving());
doc.save(getArtifactsDir() + "Document.SaveWithFontsExport.html", options);
}
/// <summary>
/// Prints information about fonts and saves them alongside their output .html
/// </summary>
public static class HandleFontSaving implements IFontSavingCallback {
public void fontSaving(FontSavingArgs args) throws Exception {
// Print information about fonts
System.out.println(MessageFormat.format("Font:\t{0}", args.getFontFamilyName()));
if (args.getBold()) System.out.println(", bold");
if (args.getItalic()) System.out.println(", italic");
System.out.println(MessageFormat.format("\nSource:\t{0}, {1} bytes\n", args.getOriginalFileName(), args.getOriginalFileSize()));
Assert.assertTrue(args.isExportNeeded());
Assert.assertTrue(args.isSubsettingNeeded());
// We can designate where each font will be saved by either specifying a file name, or creating a new stream
String[] parts = args.getOriginalFileName().split(File.separator + File.separator);
String lastOne = parts[parts.length - 1];
args.setFontFileName(lastOne);
Assert.assertFalse(args.getKeepFontStreamOpen());
// We can access the source document from here also
Assert.assertTrue(args.getDocument().getOriginalFileName().endsWith("Rendering.doc"));
}
}
| Method Summary | ||
|---|---|---|
abstract void | fontSaving(FontSavingArgs args) | |
| Called when Aspose.Words is about to save a font resource. | ||
| Method Detail |
|---|
fontSaving | |
public abstract void fontSaving(FontSavingArgs args) throws java.lang.Exception | |
Example:
Shows how to define custom logic for handling font exporting when saving to HTML based formats.
public void saveHtmlExportFonts() throws Exception {
Document doc = new Document(getMyDir() + "Rendering.doc");
// Set the option to export font resources.
HtmlSaveOptions options = new HtmlSaveOptions(SaveFormat.MHTML);
options.setExportFontResources(true);
// Create and pass the object which implements the handler methods.
options.setFontSavingCallback(new HandleFontSaving());
doc.save(getArtifactsDir() + "Document.SaveWithFontsExport.html", options);
}
/// <summary>
/// Prints information about fonts and saves them alongside their output .html
/// </summary>
public static class HandleFontSaving implements IFontSavingCallback {
public void fontSaving(FontSavingArgs args) throws Exception {
// Print information about fonts
System.out.println(MessageFormat.format("Font:\t{0}", args.getFontFamilyName()));
if (args.getBold()) System.out.println(", bold");
if (args.getItalic()) System.out.println(", italic");
System.out.println(MessageFormat.format("\nSource:\t{0}, {1} bytes\n", args.getOriginalFileName(), args.getOriginalFileSize()));
Assert.assertTrue(args.isExportNeeded());
Assert.assertTrue(args.isSubsettingNeeded());
// We can designate where each font will be saved by either specifying a file name, or creating a new stream
String[] parts = args.getOriginalFileName().split(File.separator + File.separator);
String lastOne = parts[parts.length - 1];
args.setFontFileName(lastOne);
Assert.assertFalse(args.getKeepFontStreamOpen());
// We can access the source document from here also
Assert.assertTrue(args.getDocument().getOriginalFileName().endsWith("Rendering.doc"));
}
}