public class CssSavingArgs
By default, when Aspose.Words saves a document to HTML, it saves CSS information inline
(as a value of the style attribute on every element).
To save CSS into stream, use the To suppress saving CSS into a file and embedding to HTML document use the Example:
public void cssSavingCallback() throws Exception {
// Open a document to be converted to html
Document doc = new Document(getMyDir() + "Rendering.docx");
// If our output document will produce a CSS stylesheet, we can use an HtmlSaveOptions to control where it is saved
HtmlSaveOptions options = new HtmlSaveOptions();
// By default, a CSS stylesheet is stored inside its HTML document, but we can have it saved to a separate file
options.setCssStyleSheetType(CssStyleSheetType.EXTERNAL);
// We can designate a filename for our stylesheet like this
options.setCssStyleSheetFileName(getArtifactsDir() + "SavingCallback.CssSavingCallback.css");
// A custom ICssSavingCallback implementation can also control where that stylesheet will be saved and linked to by the Html document
// This callback will override the filename we specified above in options.CssStyleSheetFileName,
// but will give us more control over the saving process
options.setCssSavingCallback(new CustomCssSavingCallback(getArtifactsDir() + "SavingCallback.CssSavingCallback.css", true, false));
// The CssSaving() method of our callback will be called at this stage
doc.save(getArtifactsDir() + "SavingCallback.CssSavingCallback.html", options);
}
/// <summary>
/// Designates a filename and other parameters for the saving of a CSS stylesheet.
/// </summary>
private static class CustomCssSavingCallback implements ICssSavingCallback {
public CustomCssSavingCallback(String cssDocFilename, boolean isExportNeeded, boolean keepCssStreamOpen) {
mCssTextFileName = cssDocFilename;
mIsExportNeeded = isExportNeeded;
mKeepCssStreamOpen = keepCssStreamOpen;
}
public void cssSaving(CssSavingArgs args) throws Exception {
Assert.assertNull(args.getCssStream());
// Set up the stream that will create the CSS document
args.setCssStream(new FileOutputStream(mCssTextFileName));
Assert.assertNotNull(args.getCssStream());
args.isExportNeeded(mIsExportNeeded);
args.setKeepCssStreamOpen(mKeepCssStreamOpen);
// We can also access the original document here like this
Assert.assertTrue(args.getDocument().getOriginalFileName().endsWith("Rendering.docx"));
}
private String mCssTextFileName;
private boolean mIsExportNeeded;
private boolean mKeepCssStreamOpen;
}
Property Getters/Setters Summary | ||
---|---|---|
java.io.OutputStream | getCssStream() | |
void | setCssStream(java.io.OutputStreamvalue) | |
Allows to specify the stream where the CSS information will be saved to. | ||
Document | getDocument() | |
Gets the document object that is currently being saved.
|
||
boolean | isExportNeeded() | |
void | isExportNeeded(booleanvalue) | |
Allows to specify whether the CSS will be exported to file and embedded to HTML document. Default is true .
When this property is false , the CSS information will not be saved to a CSS file and will not be embedded to HTML document.
|
||
boolean | getKeepCssStreamOpen() | |
void | setKeepCssStreamOpen(booleanvalue) | |
Specifies whether Aspose.Words should keep the stream open or close it after saving an CSS information. |
public java.io.OutputStream getCssStream() / public void setCssStream(java.io.OutputStream value)
This property allows you to save CSS information to a stream.
The default value is null
. This property doesn't suppress saving CSS information to a file or
embedding to HTML document. To suppress exporting CSS use the
Using
Example:
Shows how to work with CSS stylesheets that may be created along with Html documents.public void cssSavingCallback() throws Exception { // Open a document to be converted to html Document doc = new Document(getMyDir() + "Rendering.docx"); // If our output document will produce a CSS stylesheet, we can use an HtmlSaveOptions to control where it is saved HtmlSaveOptions options = new HtmlSaveOptions(); // By default, a CSS stylesheet is stored inside its HTML document, but we can have it saved to a separate file options.setCssStyleSheetType(CssStyleSheetType.EXTERNAL); // We can designate a filename for our stylesheet like this options.setCssStyleSheetFileName(getArtifactsDir() + "SavingCallback.CssSavingCallback.css"); // A custom ICssSavingCallback implementation can also control where that stylesheet will be saved and linked to by the Html document // This callback will override the filename we specified above in options.CssStyleSheetFileName, // but will give us more control over the saving process options.setCssSavingCallback(new CustomCssSavingCallback(getArtifactsDir() + "SavingCallback.CssSavingCallback.css", true, false)); // The CssSaving() method of our callback will be called at this stage doc.save(getArtifactsDir() + "SavingCallback.CssSavingCallback.html", options); } /// <summary> /// Designates a filename and other parameters for the saving of a CSS stylesheet. /// </summary> private static class CustomCssSavingCallback implements ICssSavingCallback { public CustomCssSavingCallback(String cssDocFilename, boolean isExportNeeded, boolean keepCssStreamOpen) { mCssTextFileName = cssDocFilename; mIsExportNeeded = isExportNeeded; mKeepCssStreamOpen = keepCssStreamOpen; } public void cssSaving(CssSavingArgs args) throws Exception { Assert.assertNull(args.getCssStream()); // Set up the stream that will create the CSS document args.setCssStream(new FileOutputStream(mCssTextFileName)); Assert.assertNotNull(args.getCssStream()); args.isExportNeeded(mIsExportNeeded); args.setKeepCssStreamOpen(mKeepCssStreamOpen); // We can also access the original document here like this Assert.assertTrue(args.getDocument().getOriginalFileName().endsWith("Rendering.docx")); } private String mCssTextFileName; private boolean mIsExportNeeded; private boolean mKeepCssStreamOpen; }
public Document getDocument()
Example:
Shows how to work with CSS stylesheets that may be created along with Html documents.public void cssSavingCallback() throws Exception { // Open a document to be converted to html Document doc = new Document(getMyDir() + "Rendering.docx"); // If our output document will produce a CSS stylesheet, we can use an HtmlSaveOptions to control where it is saved HtmlSaveOptions options = new HtmlSaveOptions(); // By default, a CSS stylesheet is stored inside its HTML document, but we can have it saved to a separate file options.setCssStyleSheetType(CssStyleSheetType.EXTERNAL); // We can designate a filename for our stylesheet like this options.setCssStyleSheetFileName(getArtifactsDir() + "SavingCallback.CssSavingCallback.css"); // A custom ICssSavingCallback implementation can also control where that stylesheet will be saved and linked to by the Html document // This callback will override the filename we specified above in options.CssStyleSheetFileName, // but will give us more control over the saving process options.setCssSavingCallback(new CustomCssSavingCallback(getArtifactsDir() + "SavingCallback.CssSavingCallback.css", true, false)); // The CssSaving() method of our callback will be called at this stage doc.save(getArtifactsDir() + "SavingCallback.CssSavingCallback.html", options); } /// <summary> /// Designates a filename and other parameters for the saving of a CSS stylesheet. /// </summary> private static class CustomCssSavingCallback implements ICssSavingCallback { public CustomCssSavingCallback(String cssDocFilename, boolean isExportNeeded, boolean keepCssStreamOpen) { mCssTextFileName = cssDocFilename; mIsExportNeeded = isExportNeeded; mKeepCssStreamOpen = keepCssStreamOpen; } public void cssSaving(CssSavingArgs args) throws Exception { Assert.assertNull(args.getCssStream()); // Set up the stream that will create the CSS document args.setCssStream(new FileOutputStream(mCssTextFileName)); Assert.assertNotNull(args.getCssStream()); args.isExportNeeded(mIsExportNeeded); args.setKeepCssStreamOpen(mKeepCssStreamOpen); // We can also access the original document here like this Assert.assertTrue(args.getDocument().getOriginalFileName().endsWith("Rendering.docx")); } private String mCssTextFileName; private boolean mIsExportNeeded; private boolean mKeepCssStreamOpen; }
public boolean isExportNeeded() / public void isExportNeeded(boolean value)
true
.
When this property is false
, the CSS information will not be saved to a CSS file and will not be embedded to HTML document.
Example:
Shows how to work with CSS stylesheets that may be created along with Html documents.public void cssSavingCallback() throws Exception { // Open a document to be converted to html Document doc = new Document(getMyDir() + "Rendering.docx"); // If our output document will produce a CSS stylesheet, we can use an HtmlSaveOptions to control where it is saved HtmlSaveOptions options = new HtmlSaveOptions(); // By default, a CSS stylesheet is stored inside its HTML document, but we can have it saved to a separate file options.setCssStyleSheetType(CssStyleSheetType.EXTERNAL); // We can designate a filename for our stylesheet like this options.setCssStyleSheetFileName(getArtifactsDir() + "SavingCallback.CssSavingCallback.css"); // A custom ICssSavingCallback implementation can also control where that stylesheet will be saved and linked to by the Html document // This callback will override the filename we specified above in options.CssStyleSheetFileName, // but will give us more control over the saving process options.setCssSavingCallback(new CustomCssSavingCallback(getArtifactsDir() + "SavingCallback.CssSavingCallback.css", true, false)); // The CssSaving() method of our callback will be called at this stage doc.save(getArtifactsDir() + "SavingCallback.CssSavingCallback.html", options); } /// <summary> /// Designates a filename and other parameters for the saving of a CSS stylesheet. /// </summary> private static class CustomCssSavingCallback implements ICssSavingCallback { public CustomCssSavingCallback(String cssDocFilename, boolean isExportNeeded, boolean keepCssStreamOpen) { mCssTextFileName = cssDocFilename; mIsExportNeeded = isExportNeeded; mKeepCssStreamOpen = keepCssStreamOpen; } public void cssSaving(CssSavingArgs args) throws Exception { Assert.assertNull(args.getCssStream()); // Set up the stream that will create the CSS document args.setCssStream(new FileOutputStream(mCssTextFileName)); Assert.assertNotNull(args.getCssStream()); args.isExportNeeded(mIsExportNeeded); args.setKeepCssStreamOpen(mKeepCssStreamOpen); // We can also access the original document here like this Assert.assertTrue(args.getDocument().getOriginalFileName().endsWith("Rendering.docx")); } private String mCssTextFileName; private boolean mIsExportNeeded; private boolean mKeepCssStreamOpen; }
public boolean getKeepCssStreamOpen() / public void setKeepCssStreamOpen(boolean value)
Default is false
and Aspose.Words will close the stream you provided
in the true
to keep the stream open.
Example:
Shows how to work with CSS stylesheets that may be created along with Html documents.public void cssSavingCallback() throws Exception { // Open a document to be converted to html Document doc = new Document(getMyDir() + "Rendering.docx"); // If our output document will produce a CSS stylesheet, we can use an HtmlSaveOptions to control where it is saved HtmlSaveOptions options = new HtmlSaveOptions(); // By default, a CSS stylesheet is stored inside its HTML document, but we can have it saved to a separate file options.setCssStyleSheetType(CssStyleSheetType.EXTERNAL); // We can designate a filename for our stylesheet like this options.setCssStyleSheetFileName(getArtifactsDir() + "SavingCallback.CssSavingCallback.css"); // A custom ICssSavingCallback implementation can also control where that stylesheet will be saved and linked to by the Html document // This callback will override the filename we specified above in options.CssStyleSheetFileName, // but will give us more control over the saving process options.setCssSavingCallback(new CustomCssSavingCallback(getArtifactsDir() + "SavingCallback.CssSavingCallback.css", true, false)); // The CssSaving() method of our callback will be called at this stage doc.save(getArtifactsDir() + "SavingCallback.CssSavingCallback.html", options); } /// <summary> /// Designates a filename and other parameters for the saving of a CSS stylesheet. /// </summary> private static class CustomCssSavingCallback implements ICssSavingCallback { public CustomCssSavingCallback(String cssDocFilename, boolean isExportNeeded, boolean keepCssStreamOpen) { mCssTextFileName = cssDocFilename; mIsExportNeeded = isExportNeeded; mKeepCssStreamOpen = keepCssStreamOpen; } public void cssSaving(CssSavingArgs args) throws Exception { Assert.assertNull(args.getCssStream()); // Set up the stream that will create the CSS document args.setCssStream(new FileOutputStream(mCssTextFileName)); Assert.assertNotNull(args.getCssStream()); args.isExportNeeded(mIsExportNeeded); args.setKeepCssStreamOpen(mKeepCssStreamOpen); // We can also access the original document here like this Assert.assertTrue(args.getDocument().getOriginalFileName().endsWith("Rendering.docx")); } private String mCssTextFileName; private boolean mIsExportNeeded; private boolean mKeepCssStreamOpen; }