Aspose.Words授权购买
下载:6760 收藏:700

Aspose.Words (产品编号:10564)

无需Microsoft Word也可在任何平台上满足Word文档的一切操作需求。

标签:文档管理OfficewordAspose.words文档处理

开发商: ASPOSE

当前版本: v19.6

产品类型:控件

产品功能:文档管理/

平台语言:.NET|JAVA

开源水平:不提供源码

用户推荐:

用户评分:

关于本产品的分类与介绍仅供参考,具体以商家网站介绍为准。

同类软件推荐:

Xceed Zip for .NET
Xceed Zip for .NET

唯一与所有最新Zip文件格式兼容的Zip库,包括在文件名中支持所有字符的UTF-8和兼容WinZip 12+的LZMA

PDF4NET
PDF4NET

PDF4NET是一种.NET库,它能够对运行中的任意.NET应用程序进行创建、编辑和填充PDF文档。

Aspose1160X100.png

Aspose.Words for .Net更新至v19.6版本,新增从Word文档中提取VBA宏的API,实现了表格样式的公共API,修复多项Bug,具体更新如下:

主要特点

  • 提供了从Word文档中提取VBA宏的API
  • 添加了一个新的DocSaveOptions.AlwaysCompressMetafiles选项
  • 实现了表风格的公共API
  • 改进的渲染曲线箭头形状与基本和自定义的调整点
  • 改进了DrawingML图表的渲染,如果图表图例具有手动布局,则可以缩放垂直轴。
  • FontInfo替换被调优为更喜欢符号字体作为符号字体的替换,而常规字体作为常规字体的替换。这解决了客户选择符号“XVMSymbol”字体替代常规字体的问题。
  • 修正了绘制DrawingML图表时比例变化的bug
  • 修正了文本内阴影渲染转换为HTML时的错误
  • 修正了一个错误与堆叠面积图表渲染,如果该系列有不同的数值
  • 修正了第二个带有隐藏轴的空图表的bug
  • 修正了绘制DrawingML对象时对小椭圆的起始点和结束点计算错误的问题
  • 固定表格网格计算问题时,自动表格有pct宽度与%混合
  • 固定异常时,表跨多个页面,并有许多嵌套飞蚊打破跨页面
  • 当存在段落相对形状且锚点缠绕在多个浮动区域周围时,改进了文本定位
  • 改进了一个段落前的空间计算,当它在文档的第一个段落前有一个浮动符时


具体更新内容

key概述类别
WORDSNET-5312支持创建表格样式新功能
WORDSNET-17604提供一种访问特定TableStyle的Cell Padding属性的方法新功能
WORDSNET-18570 未识别水平合并单元格新功能
WORDSNET-17757提供API以从Word文档中提取VBA宏新功能
WORDSNET-18400添加功能以修改表格样式新功能
WORDSNET-3714考虑添加从文档中读取宏的功能新功能
WORDSNET-18473实现软件和硬件模式渲染之间的切换新功能
WORDSNET-9641访问表格样式的信息新功能
WORDSNET-18372调用Document.UpdateFields方法时发生System.NullReferenceExceptionBug修复
WORDSNET-18556渲染期间发生System.IndexOutOfRangeExceptionBug修复
WORDSNET-18407Table.AutoFit不适用于AutoFitBehavior.AutoFitToWindowBug修复
WORDSNET-18566将RTF转换为PDF后 - 缺少部分文本Bug修复
WORDSNET-16363SVG梯度问题Bug修复
WORDSNET-18414升级到.Net的v19.3后,UpdateFields停止添加页码Bug修复
WORDSNET-18572Document.UpdateFields不更新TOC字段Bug修复
WORDSNET-18574Document.CopyStylesFromTemplate抛出System.NullReferenceExceptionBug修复
WORDSNET-18443带有形状(箭头)位置的DOCX到PDF / HTML固定转换问题Bug修复
WORDSNET-18508从RTF转换为DOCX后,单元格边框和宽度会发生变化Bug修复
WORDSNET-18206DOCX到PDF - 文本向下移动Bug修复
WORDSNET-17470图表的比例在渲染期间发生变化Bug修复
WORDSNET-17468图表的比例在渲染期间发生变化Bug修复
WORDSNET-17856从Range类中删除过时的方法Replace()Bug修复
WORDSNET-18388Document.UpdateFields抛出System.ArgumentExceptionBug修复
WORDSNET-17566将DOCX保存到HTML时抛出System.OutOfMemoryExceptionBug修复
WORDSNET-18079将DOCX转换为PDF会将文本框向下移动到页面上Bug修复
WORDSNET-16544额外的行在输出PDF中呈现Bug修复
WORDSNET-18555渲染期间发生System.NullReferenceExceptionBug修复
WORDSNET-18061导出到SVG期间的图像缩放问题Bug修复
WORDSNET-18557Shading.BackgroundPatternColor返回不正确的单元格的背景颜色Bug修复
WORDSNET-18586错误的测试失败:“参数无效”Bug修复
WORDSNET-18587使用自定义调整值的CurvedArrows渲染不正确Bug修复
WORDSNET-18276使用TOC项目的DOCX到HtmlFixed转换问题Bug修复
WORDSNET-18575Helvetica Neue字体的字体替换不正确Bug修复
WORDSNET-18602加载DOC时发生FileCorruptedExceptionBug修复
WORDSNET-18579调用Document.Cleanup后,Lists.Count返回不正确的值Bug修复
WORDSNET-18554SVG文本对齐方式不正确Bug修复
WORDSNET-18517保存为PDF时发生System.NullReferenceExceptionBug修复
WORDSNET-18604保存后,词汇表文档样式已更改Bug修复
WORDSNET-13116将DOCX保存为DOC / PDF后,将错过内容控制Bug修复
WORDSNET-18233PDF格式的表格宽度问题Bug修复
WORDSNET-13769在AW PDF输出中不可见的表格行Bug修复
WORDSNET-18232HTML往返期间丢失空段落Bug修复
WORDSNET-18520接受跟踪更改需要很长时间才能完成Bug修复
WORDSNET-18421使用QR码进行DOCX到PDF转换的问题Bug修复
WORDSNET-15459具有文本位置的DOCX到PDF转换问题Bug修复
WORDSNET-16290使用DocumentBuilder.InsertHtml插入的文本具有错误的字体系列Bug修复
WORDSNET-18059DocumentBuilder.InsertImage在文档中错误地插入SVGBug修复
WORDSNET-14480MathML在输出HTML / DOCX中的数字之间有空格Bug修复
WORDSNET-18476Document.UpdateFields抛出System.ArgumentExceptionBug修复
WORDSNET-18551转换为HTML时,CurvedArrows的渲染不正确Bug修复
WORDSNET-18112包含内容控件的字段未更新Bug修复
WORDSNET-17867在DOCX到PDF转换期间,轴标签已更改Bug修复
WORDSNET-18481将DOCX保存为PDF时抛出System.ArgumentOutOfRangeExceptionBug修复
WORDSNET-18168使用LibreOffice打开时,Doc文件中的公式已损坏Bug修复
WORDSNET-18497保存为PDF时,水印不显示元音字形Bug修复
WORDSNET-18638改善DML比较Bug修复
WORDSNET-18640具有阴影效果的WordArt渲染不正确Bug修复
WORDSNET-18645图像在Aspose.Words DOM中导入不正确Bug修复
WORDSNET-18616缺少Word中的文本到PDF渲染Bug修复
WORDSNET-13064将DOCX保存为DOC / PDF后,将错过内容控制Bug修复

Aspose.Words 19.6中的公共API更改


▲添加了新的DocSaveOptions.AlwaysCompressMetafiles选项

导出文档时始终会压缩大型元文件。但是由于性能原因,不会压缩小元文件。Word会压缩所有元文件,无论其大小如何。此外,其他一些文档编辑器(如LibreOffice)无法读取未压缩的元文件。为了允许用户选择适当的行为,DocSaveOptions类中引入了以下选项:

////// Whenfalse, small metafiles are not compressed for performance reason.
/// Default value is true, all metafiles are compressed regardless of its size.
///public bool AlwaysCompressMetafiles

▲License.IsLicensed标记为已过时

将出于安全原因删除此属性:

////// Returns true if a valid license has been applied; false if the component is running in evaluation mode.
///[Obsolete("This property is obsolete. SetLicense() method raises an exception if license is invalid.")]
public bool IsLicensed

▲WORDSNET-3714能够从文档中读取宏

实现了访问VBA项目源代码的功能。已添加以下类:VbaProject,VbaModuleCollection,VbaModule。

////// Provides access to VBA project information.
/// A VBA project inside the document is defined as a collection of VBA modules.
///public class VbaProject
{
    ////// Returns VBA project name.
    ///public string Name
    {
        get;
    }
  
    ////// Returns collection of VBA project modules.
    ///public VbaModuleCollection Modules
    {
        get;
    }
}
  
////// Provides access to VBA project module.
///public class VbaModule
{
    ////// Returns VBA project module name.
    ///public string Name
    {
        get;
    }
  
    ////// Returns VBA project module source code.
    ///public string SourceCode
    {
        get;
    }
}

▲WORDSNET-17856已过时的方法Replace()已从Range类中删除

已从Range类中删除已废弃的方法Replace。并修复了新FindReplacer中的一些小错误。

////// Replaces all occurrences of a character pattern specified by a regular expression with another string.
/////////Replaces the whole match captured by the regular expression.///Method is able to process breaks in both pattern and replacement strings./// You should use special meta-characters if you need to work with breaks:
//////&p - paragraph break///&b - section break///&m - page break///&l - manual line break////// To leave any meta-character intact a parametershould be set to true.
//////A regular expression pattern used to find matches.///A string to replace all occurrences of pattern.///object to specify additional options.///The number of replacements made.public int Replace(string pattern, string replacement)
public int Replace(string pattern, string replacement, FindReplaceOptions options)
public int Replace(Regex pattern, string replacement)
public int Replace(Regex pattern, string replacement, FindReplaceOptions options)

▲WORDSNET-18400 - 实现了表格式的公共API

新的公共属性已添加到TableStyle类中,并且已实现新的公共类型ConditionalStyleCollection,ConditionalStyle,ConditionalStyleType。

public class TableStyle : Style
{
    // Gets or sets a flag indicating whether text in a table row is allowed to split across a page break.
    // The default value is true.
    public bool AllowBreakAcrossPages
    {
        get; set;
    }
  
    // Gets the collection of default cell borders for the style.
    public BorderCollection Borders
    {
        get;
    }
  
    // Gets or sets the amount of space (in points) to add to the left of the contents of table cells.
    public double LeftPadding
    {
        get; set;
    }
  
    // Gets or sets the amount of space (in points) to add to the right of the contents of table cells.
    public double RightPadding
    {
        get; set;
    }
  
    // Gets or sets the amount of space (in points) to add above the contents of table cells.
    public double TopPadding
    {
        get; set;
    }
  
    // Gets or sets the amount of space (in points) to add below the contents of table cells.
    public double BottomPadding
    {
        get; set;
    }
  
    // Specifies the alignment for the table style.
    // The default value is TableAlignment.Left.
    public TableAlignment Alignment
    {
        get; set;
    }
  
    // Gets or sets the amount of space (in points) between the cells.
    public double CellSpacing
    {
        get; set;
    }
  
    // Gets or sets whether this is a style for a right-to-left table.
    // When true, the cells in rows are laid out right to left.
    // The default value is false.
    public bool Bidi
    {
        get; set;
    }
  
    // Gets or sets the value that represents the left indent of a table.
    public double LeftIndent
    {
        get: set;
    }
  
    // Gets a Shading object that refers to the shading formatting for table cells.
    public Shading Shading
    {
        get;
    }
  
    // Gets or sets a number of rows to include in the banding when the style specifies odd/even row banding.
    public int RowStripe
    {
        get; set;
    }
  
    // Gets or sets a number of columns to include in the banding when the style specifies odd/even columns banding.
    public int ColumnStripe
    {
        get; set;
    }
  
    // Collection of conditional styles that may be defined for this table style.
    public ConditionalStyleCollection ConditionalStyles
    {
        get;
    }
}
  
// Represents a collection of ConditionalStyle objects.
// It is not possible to add or remove items from this collection. It contains permanent set of items: one item for
// each value of the ConditionalStyleType enumeration type.
public class ConditionalStyleCollection : IEnumerable{
    // Clears all conditional styles of the table style.
    public void ClearFormatting();
  
    // Retrieves a ConditionalStyle object by conditional style type.
    public ConditionalStyle this[ConditionalStyleType conditionalStyleType]
    {
        get;
    }
  
    // Retrieves a ConditionalStyle object by index.
    // index: Zero-based index of the conditional style to retrieve.
    public ConditionalStyle this[int index]
    {
        get;
    }
  
    // Gets the number of conditional styles in the collection.
    public int Count
    {
        get;
    }
  
    // Gets the first row style.
    public ConditionalStyle FirstRow
    {
        get;
    }
  
    // Gets the first column style.
    public ConditionalStyle FirstColumn
    {
        get;
    }
  
    // Gets the last row style.
    public ConditionalStyle LastRow
    {
        get;
    }
  
    // Gets the last column style.
    public ConditionalStyle LastColumn
    {
        get;
    }
  
    // Gets the odd row banding style.
    public ConditionalStyle OddRowBanding
    {
        get;
    }
  
    // Gets the odd column banding style.
    public ConditionalStyle OddColumnBanding
    {
        get;
    }
  
    // Gets the even row banding style.
    public ConditionalStyle EvenRowBanding
    {
        get;
    }
  
    // Gets the even column banding style.
    public ConditionalStyle EvenColumnBanding
    {
        get;
    }
  
    // Gets the top left cell style.
    public ConditionalStyle TopLeftCell
    {
        get;
    }
  
    // Gets the top right cell style.
    public ConditionalStyle TopRightCell
    {
        get;
    }
  
    // Gets the bottom left cell style.
    public ConditionalStyle BottomLeftCell
    {
        get;
    }
  
    // Gets the bottom right cell style.
    public ConditionalStyle BottomRightCell
    {
        get;
    }
 }
  
// Represents special formatting applied to some area of a table with assigned table style.
public class ConditionalStyle
{
    // Clears formatting of this conditional style.
    public void ClearFormatting();
  
    // Gets the paragraph formatting of the conditional style.
    public ParagraphFormat ParagraphFormat
    {
        get:
    }
  
    // Gets the character formatting of the conditional style.
    public Font Font
    {
        get;
    }
  
    // Gets a Shading object that refers to the shading formatting for this conditional style.
    public Shading Shading
    {
        get;
    }
  
    // Gets the collection of default cell borders for the conditional style.
    public BorderCollection Borders
    {
        get;
    }
  
    // Gets or sets the amount of space (in points) to add to the left of the contents of table cells.
    public double LeftPadding
    {
        get; set;
    }
  
    // Gets or sets the amount of space (in points) to add to the right of the contents of table cells.
    public double RightPadding
    {
        get; set;
    }
  
    // Gets or sets the amount of space (in points) to add above the contents of table cells.
    public double TopPadding
    {
        get; set;
    }
  
    // Gets or sets the amount of space (in points) to add below the contents of table cells.
    public double BottomPadding
    {
        get; set;
    }
  
    // Gets table area to which this conditional style relates.
    public ConditionalStyleType Type
    {
        get;
    }
 }
  
// Represents possible table areas to which conditional formatting may be defined in a table style.
public enum ConditionalStyleType
{
    // Specifies formatting of the first row of a table.
    FirstRow,
    // Specifies formatting of the first column of a table.
    FirstColumn,
    // Specifies formatting of the last row of a table.
    LastRow,
    // Specifies formatting of the last column of a table.
    LastColumn,
    // Specifies formatting of odd-numbered row stripe.
    OddRowBanding,
    // Specifies formatting of odd-numbered column stripe.
    OddColumnBanding,
    // Specifies formatting of even-numbered row stripe.
    EvenRowBanding,
    // Specifies formatting of even-numbered column stripe.
    EvenColumnBanding,
    // Specifies formatting of the top left cell of a table.
    TopLeftCell,
    // Specifies formatting of the top right cell of a table.
    TopRightCell,
    // Specifies formatting of the bottom left cell of a table.
    BottomLeftCell,
    // Specifies formatting of the bottom right cell of a table.
    BottomRightCell
}

▲WORDSNET-18570添加了公共方法ConvertToHorizontallyMergedCells

MS Word使用了两种众所周知的技术来实现表中的水平合并单元格。第一个是合并标志,如Cell.CellFormat。HorizontalMerge,但是根据最新的MS Word行为,似乎不再使用这种方式,而且MS Word只是不写merge标志。相反,MS Word使用了另一种技术,即单元格按其宽度水平合并。

因此,当单元格按其宽度水平合并时 - 没有合并标志,当然,没有办法使用合并标志来检测合并的单元格。一些客户发现这很不方便。为了解决这个不便,我们添加了一个新的公共方法,将通过其宽度水平合并的单元格转换为由flags水平合并的单元格。


查看Aspose.Words 更新新闻


更新时间:2019-04-08 13:06:19.000 | 录入时间:2007-06-27 00:00:00.000 | 责任编辑:李显亮

在线客服 在线QQ 电话咨询
400-700-1020
在线客服系统
live chat