Aspose.Words在word文档合并时如何控制列表编号

Aspose.Words在word文档合并时如何控制列表编号,第1张

在MyStyle的超链接样式下,用ImportFormatModeKeepSourceFormatting 保留源文件格式的列表编号的代码如下:

C#

Document dstDoc = new Document(gDataDir + "TestFileDestinationListdoc");

Document srcDoc = new Document(gDataDir + "TestFileSourceListdoc");

// Append the content of the document so it flows continuously

srcDocFirstSectionPageSetupSectionStart = SectionStartContinuous;

dstDocAppendDocument(srcDoc, ImportFormatModeKeepSourceFormatting);

dstDocSave(gDataDir + "TestFileListKeepSourceFormatting Outdoc");

Visual Basic

Dim dstDoc As New Document(gDataDir & "TestFileDestinationListdoc")

Dim srcDoc As New Document(gDataDir & "TestFileSourceListdoc")

' Append the content of the document so it flows continuously

srcDocFirstSectionPageSetupSectionStart = SectionStartContinuous

dstDocAppendDocument(srcDoc, ImportFormatModeKeepSourceFormatting)

dstDocSave(gDataDir & "TestFileListKeepSourceFormatting Outdoc")

为了让制作好的表格与整篇文章更协调,通常还需要对表格进行必要的格式设置。(1)快速套用表格的样式Word2007提供了丰富的表格样式库,有些甚至具有镶边行、列,用户可以直接套用这些表格样式。选取表格,单击“设计”选项卡,在“表样式”区域选择一种样式,如图1所示,即可将集成的样式套用至表格中,效果如图2所示。

设置Word2007的表格格式小提示:单击样式区域的向下箭头,可选择更多的表格样式。单击"底纹"按钮可为选定的单元格单独设罝底色。

(2)设置表格的对齐方式在默认情况下,Word表格与文档中文本采用左对齐方式,用户也可以根据需要调整表格与文档中文本的对齐方式。第1步,选取表格,单击“布局”选项卡,在“表”区域中单击“属性”按钮,如图3所示。

第2步,打开“表格属性”对话框。在“对齐方式”栏中,选择“居中”或“右对齐”对齐方式,如图4所示,然后单击“确定”按钮。

小提示:单击“对齐方式"中的“文字方向"按钮可将单元格中横向(纵向)排列的文字改为纵向(横向)排列。

(3)调整单元格中文字的对齐方式。对单元格中的文字,Word提供了“靠上两端对齐”、“靠上居中对齐”等9中对齐方式,如图5所示。

选中需要调整文字对齐方式的表格或单元格,单击“布局”选项卡,在对齐方式中选择一种对齐方式即可。

对于文档处理控件Asposewords,它的具有代表性的功能是在没有安装Microsoft Word的情况下,也能实现生成、打印、渲染、邮件合并,文档格式转换等功能。今天在使用AsposeWords过程中,意外的发现这款文档处理软件的另外一个功能,它可以将图像转换为PDF文件,接下来就为大家分享一下实现这一功能的具体代码:

using System;

using SystemDrawing;

using SystemDrawingImaging;

using SystemIO;

using SystemReflection;

 

using AsposeWords;

using AsposeWordsDrawing;

 

namespace ImageToPdf

{

    class Program

    {

        public static void Main(string[] args)

        {

            // Sample infrastructure

            string exeDir = PathGetDirectoryName(AssemblyGetExecutingAssembly()Location) + PathDirectorySeparatorChar;

            string dataDir = new Uri(new Uri(exeDir), @"//Data/")LocalPath;

 

            ConvertImageToPdf(dataDir + "Testjpg", dataDir + "TestJpg Outpdf");

            ConvertImageToPdf(dataDir + "Testpng", dataDir + "TestPng Outpdf");

            ConvertImageToPdf(dataDir + "Testwmf", dataDir + "TestWmf Outpdf");

            ConvertImageToPdf(dataDir + "Testtiff", dataDir + "TestTiff Outpdf");

            ConvertImageToPdf(dataDir + "Testgif", dataDir + "TestGif Outpdf");

        }

 

        /// <summary>

        /// Converts an image to PDF using AsposeWords for NET

        /// </summary>

        /// <param name="inputFileName">File name of input image file</param>

        /// <param name="outputFileName">Output PDF file name</param>

        public static void ConvertImageToPdf(string inputFileName, string outputFileName)

        {

            // Create AsposeWordsDocument and DocumentBuilder

            // The builder makes it simple to add content to the document

            Document doc = new Document();

            DocumentBuilder builder = new DocumentBuilder(doc);

 

            // Read the image from file, ensure it is disposed

            using (Image image = ImageFromFile(inputFileName))

            {

                // Find which dimension the frames in this image represent For example 

                // the frames of a BMP or TIFF are "page dimension" whereas frames of a GIF image are "time dimension" 

                FrameDimension dimension = new FrameDimension(imageFrameDimensionsList[0]); 

 

                 // Get the number of frames in the image

                int framesCount = imageGetFrameCount(dimension);

 

                // Get the number of frames in the image

                int framesCount = imageGetFrameCount(FrameDimensionPage);

 

                // Loop through all frames

                for (int frameIdx = 0; frameIdx < framesCount; frameIdx++)

                {

                    // Insert a section break before each new page, in case of a multi-frame TIFF

                    if (frameIdx != 0)

                        builderInsertBreak(BreakTypeSectionBreakNewPage);

 

                    // Select active frame

                    imageSelectActiveFrame(dimension, frameIdx);

 

                    // We want the size of the page to be the same as the size of the image

                    // Convert pixels to points to size the page to the actual image size

                    PageSetup ps = builderPageSetup;

                    psPageWidth = ConvertUtilPixelToPoint(imageWidth, imageHorizontalResolution);

                    psPageHeight = ConvertUtilPixelToPoint(imageHeight, imageVerticalResolution);

 

                    // Insert the image into the document and position it at the top left corner of the page

                    builderInsertImage(

                        image,

                        RelativeHorizontalPositionPage,

                        0,

                        RelativeVerticalPositionPage,

                        0,

                        psPageWidth,

                        psPageHeight,

                        WrapTypeNone);

                }

            }

 

            // Save the document to PDF

            docSave(outputFileName);

        }

    }

}

AsposeCells 首次使用,用到模版填充数据,合并单元格,换行

AsposeCells 首次使用,用到模版填充数据,合并单元格,换行

模版格式,图格式是最简单的格式,但实际效果不是这种,实际效果图如图2

图2 ,注意看红色部分,一对一是正常的,但是有一对多的订单,就得把前面的合并居中,后面对应多行显示

一般步骤:

var templatePath = ServerMapPath(@"/Template/区域订单列表导出模板xlsx");

1、初始化模版

Workbook workbook = new Workbook();

workbookOpen(templatePath);

2、获取模版的单元

Cells cells= workbookWorksheets[0]Cells;

3、对不同的行的单元格赋值

cells[0, 0]PutValue("我是第一行第一列,也即是第一行第一个单元格");

说一下合并单元格,这个没捷径可走,只能提供什么意思,具体业务具体去合并

//合并单元格cellsMerge(1, 0, 3, 1) 参数1代表当前行,参数0代表当前行当前列即第一行第一列,参数3合并的行数,参数4合并的列数

cellsMerge(1, 0, 3, 1);

设置单元格的样式

cells[startmergepos, 1]SetStyle(new Style() { HorizontalAlignment = TextAlignmentTypeCenter });

设置单元格的高度

//cellsSetRowHeight(row + i, 200);

using AsposeWords;要引用这个dll

#region 获取正文内容

Byte[] wordbytes = GetReadWord();//获取文件二进制

var strFileName = ServerMapPath("~/temp/adoc");

var strhtmlFileName = ServerMapPath("~/temp/bhtm");

var file = FileOpenWrite(strFileName);

fileWrite(wordbytes, 0, wordbytesLength);

fileClose();

fileDispose();

AsposeWordsDocument d = new AsposeWordsDocument(strFileName);

dSave(strhtmlFileName, SaveFormatHtml);

var htmlCode = FileReadAllText(strhtmlFileName, EncodingGetEncoding("GB2312"));

FileDelete(strFileName);

FileDelete(strhtmlFileName);

#endregion

htmlCode 字段就是获取的内容字符串

虽然AsposeWords for Java目前还不允许在Word文档中创建条形图。但是可以通过AsposeCells for Java创建静态条形图,并选染成,然后再通过AsposeWords for Java添加到Word文档中:

//Create a new Workbook

Workbook workbook = new Workbook();

//Get the first worksheet

Worksheet sheet = workbookgetWorksheets()get(0);

//Set the name of worksheet

sheetsetName("Data");

//Get the cells collection in the sheet

Cells cells = workbookgetWorksheets()get(0)getCells();

//Put some values into a cells of the Data sheet

cellsget("A1")setValue("Region");

cellsget("A2")setValue("France");

cellsget("A3")setValue("Germany");

cellsget("A4")setValue("England");

Aspose Words是一款先进的Word文档处理控件,在不使用Microsoft Words的情况下,它可以使用户在各个应用程序中执行各种文档处理任务,其中包括文档的生成、修改、渲染、打印,文档格式转换和邮件合并等文档处理。此外,AsposeWords支持DOC,OOXML,RTF,HTML,OpenDocument, PDF, XPS, EPUB和其他格式。

以上就是关于Aspose.Words在word文档合并时如何控制列表编号全部的内容,包括:Aspose.Words在word文档合并时如何控制列表编号、Aspose.Words 怎么获取表格的样式、如何使用文档处理控件Aspose.Word将图像转换为PDF文档等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9708190.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存