public class CssSavingArgs
extends java.lang.Object
ICssSavingCallback.cssSaving(com.aspose.words.CssSavingArgs) event.
To learn more, visit the Save a Document documentation article.
Remarks:
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).
CssSavingArgs allows to save CSS information into file by providing your own stream object.
To save CSS into stream, use the P:Aspose.Words.Saving.CssSavingArgs.CssStream property.
To suppress saving CSS into a file and embedding to HTML document use the isExportNeeded() / isExportNeeded(boolean) property.
Examples:
Shows how to work with CSS stylesheets that an HTML conversion creates.
public void externalCssFilenames() throws Exception {
Document doc = new Document(getMyDir() + "Rendering.docx");
// Create an "HtmlFixedSaveOptions" object, which we can pass to the document's "Save" method
// to modify how we convert the document to HTML.
HtmlSaveOptions options = new HtmlSaveOptions();
// Set the "CssStylesheetType" property to "CssStyleSheetType.External" to
// accompany a saved HTML document with an external CSS stylesheet file.
options.setCssStyleSheetType(CssStyleSheetType.EXTERNAL);
// Below are two ways of specifying directories and filenames for output CSS stylesheets.
// 1 - Use the "CssStyleSheetFileName" property to assign a filename to our stylesheet:
options.setCssStyleSheetFileName(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.css");
// 2 - Use a custom callback to name our stylesheet:
options.setCssSavingCallback(new CustomCssSavingCallback(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.css", true, false));
doc.save(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.html", options);
}
/// <summary>
/// Sets a custom filename, along with other parameters for an external 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 {
// We can access the entire source document via the "Document" property.
Assert.assertTrue(args.getDocument().getOriginalFileName().endsWith("Rendering.docx"));
args.setCssStream(new FileOutputStream(mCssTextFileName));
args.isExportNeeded(mIsExportNeeded);
args.setKeepCssStreamOpen(mKeepCssStreamOpen);
}
private final String mCssTextFileName;
private final boolean mIsExportNeeded;
private final boolean mKeepCssStreamOpen;
}
| Modifier and Type | Method and Description |
|---|---|
java.io.OutputStream |
getCssStream() |
Document |
getDocument()
Gets the document object that is currently being saved.
|
boolean |
getKeepCssStreamOpen()
Specifies whether Aspose.Words should keep the stream open or close it after saving an CSS information.
|
boolean |
isExportNeeded()
Allows to specify whether the CSS will be exported to file and embedded to HTML document.
|
void |
isExportNeeded(boolean value)
Allows to specify whether the CSS will be exported to file and embedded to HTML document.
|
void |
setCssStream(java.io.OutputStream value) |
void |
setKeepCssStreamOpen(boolean value)
Specifies whether Aspose.Words should keep the stream open or close it after saving an CSS information.
|
public Document getDocument()
Examples:
Shows how to work with CSS stylesheets that an HTML conversion creates.
public void externalCssFilenames() throws Exception {
Document doc = new Document(getMyDir() + "Rendering.docx");
// Create an "HtmlFixedSaveOptions" object, which we can pass to the document's "Save" method
// to modify how we convert the document to HTML.
HtmlSaveOptions options = new HtmlSaveOptions();
// Set the "CssStylesheetType" property to "CssStyleSheetType.External" to
// accompany a saved HTML document with an external CSS stylesheet file.
options.setCssStyleSheetType(CssStyleSheetType.EXTERNAL);
// Below are two ways of specifying directories and filenames for output CSS stylesheets.
// 1 - Use the "CssStyleSheetFileName" property to assign a filename to our stylesheet:
options.setCssStyleSheetFileName(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.css");
// 2 - Use a custom callback to name our stylesheet:
options.setCssSavingCallback(new CustomCssSavingCallback(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.css", true, false));
doc.save(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.html", options);
}
/// <summary>
/// Sets a custom filename, along with other parameters for an external 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 {
// We can access the entire source document via the "Document" property.
Assert.assertTrue(args.getDocument().getOriginalFileName().endsWith("Rendering.docx"));
args.setCssStream(new FileOutputStream(mCssTextFileName));
args.isExportNeeded(mIsExportNeeded);
args.setKeepCssStreamOpen(mKeepCssStreamOpen);
}
private final String mCssTextFileName;
private final boolean mIsExportNeeded;
private final boolean mKeepCssStreamOpen;
}
public boolean getKeepCssStreamOpen()
Remarks:
Default is false and Aspose.Words will close the stream you provided in the P:Aspose.Words.Saving.CssSavingArgs.CssStream property after writing an CSS information into it. Specify true to keep the stream open.
Examples:
Shows how to work with CSS stylesheets that an HTML conversion creates.
public void externalCssFilenames() throws Exception {
Document doc = new Document(getMyDir() + "Rendering.docx");
// Create an "HtmlFixedSaveOptions" object, which we can pass to the document's "Save" method
// to modify how we convert the document to HTML.
HtmlSaveOptions options = new HtmlSaveOptions();
// Set the "CssStylesheetType" property to "CssStyleSheetType.External" to
// accompany a saved HTML document with an external CSS stylesheet file.
options.setCssStyleSheetType(CssStyleSheetType.EXTERNAL);
// Below are two ways of specifying directories and filenames for output CSS stylesheets.
// 1 - Use the "CssStyleSheetFileName" property to assign a filename to our stylesheet:
options.setCssStyleSheetFileName(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.css");
// 2 - Use a custom callback to name our stylesheet:
options.setCssSavingCallback(new CustomCssSavingCallback(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.css", true, false));
doc.save(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.html", options);
}
/// <summary>
/// Sets a custom filename, along with other parameters for an external 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 {
// We can access the entire source document via the "Document" property.
Assert.assertTrue(args.getDocument().getOriginalFileName().endsWith("Rendering.docx"));
args.setCssStream(new FileOutputStream(mCssTextFileName));
args.isExportNeeded(mIsExportNeeded);
args.setKeepCssStreamOpen(mKeepCssStreamOpen);
}
private final String mCssTextFileName;
private final boolean mIsExportNeeded;
private final boolean mKeepCssStreamOpen;
}
P:Aspose.Words.Saving.CssSavingArgs.CssStreamboolean value.public void setKeepCssStreamOpen(boolean value)
Remarks:
Default is false and Aspose.Words will close the stream you provided in the P:Aspose.Words.Saving.CssSavingArgs.CssStream property after writing an CSS information into it. Specify true to keep the stream open.
Examples:
Shows how to work with CSS stylesheets that an HTML conversion creates.
public void externalCssFilenames() throws Exception {
Document doc = new Document(getMyDir() + "Rendering.docx");
// Create an "HtmlFixedSaveOptions" object, which we can pass to the document's "Save" method
// to modify how we convert the document to HTML.
HtmlSaveOptions options = new HtmlSaveOptions();
// Set the "CssStylesheetType" property to "CssStyleSheetType.External" to
// accompany a saved HTML document with an external CSS stylesheet file.
options.setCssStyleSheetType(CssStyleSheetType.EXTERNAL);
// Below are two ways of specifying directories and filenames for output CSS stylesheets.
// 1 - Use the "CssStyleSheetFileName" property to assign a filename to our stylesheet:
options.setCssStyleSheetFileName(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.css");
// 2 - Use a custom callback to name our stylesheet:
options.setCssSavingCallback(new CustomCssSavingCallback(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.css", true, false));
doc.save(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.html", options);
}
/// <summary>
/// Sets a custom filename, along with other parameters for an external 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 {
// We can access the entire source document via the "Document" property.
Assert.assertTrue(args.getDocument().getOriginalFileName().endsWith("Rendering.docx"));
args.setCssStream(new FileOutputStream(mCssTextFileName));
args.isExportNeeded(mIsExportNeeded);
args.setKeepCssStreamOpen(mKeepCssStreamOpen);
}
private final String mCssTextFileName;
private final boolean mIsExportNeeded;
private final boolean mKeepCssStreamOpen;
}
P:Aspose.Words.Saving.CssSavingArgs.CssStreamvalue - The corresponding boolean value.public java.io.OutputStream getCssStream()
public void setCssStream(java.io.OutputStream value)
public boolean isExportNeeded()
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.
Examples:
Shows how to work with CSS stylesheets that an HTML conversion creates.
public void externalCssFilenames() throws Exception {
Document doc = new Document(getMyDir() + "Rendering.docx");
// Create an "HtmlFixedSaveOptions" object, which we can pass to the document's "Save" method
// to modify how we convert the document to HTML.
HtmlSaveOptions options = new HtmlSaveOptions();
// Set the "CssStylesheetType" property to "CssStyleSheetType.External" to
// accompany a saved HTML document with an external CSS stylesheet file.
options.setCssStyleSheetType(CssStyleSheetType.EXTERNAL);
// Below are two ways of specifying directories and filenames for output CSS stylesheets.
// 1 - Use the "CssStyleSheetFileName" property to assign a filename to our stylesheet:
options.setCssStyleSheetFileName(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.css");
// 2 - Use a custom callback to name our stylesheet:
options.setCssSavingCallback(new CustomCssSavingCallback(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.css", true, false));
doc.save(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.html", options);
}
/// <summary>
/// Sets a custom filename, along with other parameters for an external 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 {
// We can access the entire source document via the "Document" property.
Assert.assertTrue(args.getDocument().getOriginalFileName().endsWith("Rendering.docx"));
args.setCssStream(new FileOutputStream(mCssTextFileName));
args.isExportNeeded(mIsExportNeeded);
args.setKeepCssStreamOpen(mKeepCssStreamOpen);
}
private final String mCssTextFileName;
private final boolean mIsExportNeeded;
private final boolean mKeepCssStreamOpen;
}
boolean value.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.
Examples:
Shows how to work with CSS stylesheets that an HTML conversion creates.
public void externalCssFilenames() throws Exception {
Document doc = new Document(getMyDir() + "Rendering.docx");
// Create an "HtmlFixedSaveOptions" object, which we can pass to the document's "Save" method
// to modify how we convert the document to HTML.
HtmlSaveOptions options = new HtmlSaveOptions();
// Set the "CssStylesheetType" property to "CssStyleSheetType.External" to
// accompany a saved HTML document with an external CSS stylesheet file.
options.setCssStyleSheetType(CssStyleSheetType.EXTERNAL);
// Below are two ways of specifying directories and filenames for output CSS stylesheets.
// 1 - Use the "CssStyleSheetFileName" property to assign a filename to our stylesheet:
options.setCssStyleSheetFileName(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.css");
// 2 - Use a custom callback to name our stylesheet:
options.setCssSavingCallback(new CustomCssSavingCallback(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.css", true, false));
doc.save(getArtifactsDir() + "SavingCallback.ExternalCssFilenames.html", options);
}
/// <summary>
/// Sets a custom filename, along with other parameters for an external 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 {
// We can access the entire source document via the "Document" property.
Assert.assertTrue(args.getDocument().getOriginalFileName().endsWith("Rendering.docx"));
args.setCssStream(new FileOutputStream(mCssTextFileName));
args.isExportNeeded(mIsExportNeeded);
args.setKeepCssStreamOpen(mKeepCssStreamOpen);
}
private final String mCssTextFileName;
private final boolean mIsExportNeeded;
private final boolean mKeepCssStreamOpen;
}
value - The corresponding boolean value.