精华内容
下载资源
问答
  • 服务器 : centos7 安装jdk 1. cd /usr/local/ 2. mkdir java 3. chmod -R 777 java/ 4. 下载jdk-linux-x64.tar.gz上传到/usr/local/java/ 5. cd java/ ...修改环境变量 1. vim /etc/profile ...

    服务器 : centos7

    • 安装jdk
    1. cd /usr/local/
    2. mkdir java
    3. chmod -R 777 java/
    4. 下载jdk-linux-x64.tar.gz上传到/usr/local/java/
    5. cd java/
    6. tar -zxvf jdk-linux-x64.tar.gz
    
    • 修改环境变量
    1. vim /etc/profile
        
        JAVA_HOME=/usr/local/java/jdk1.8.0_131
        CLASSPATH=$JAVA_HOME/lib/
        PATH=$PATH:$JAVA_HOME/bin
        export PATH JAVA_HOME CLASSPATH
    
    2. cd ~ && ls -a 
        vim .bashrc
        
        JAVA_HOME=/usr/local/java/jdk1.8.0_131
        CLASSPATH=$JAVA_HOME/lib/
        PATH=$PATH:$JAVA_HOME/bin
        export PATH JAVA_HOME CLASSPATH
    
    3. 更新环境变量
        source /etc/profile
        source .bashrc
    
    
    • 安装openoffice
    1. 下载openoffice包 `Apache_OpenOffice_4.1.5_Linux_x86-64_install-rpm_zh-CN.tar.gz`,地址 `http://www.openoffice.org/download/other.html`
    
    2. 解压 `tar -zxvf Apache_OpenOffice_4.1.5_Linux_x86-64_install-rpm_zh-CN.tar.gz`
    
    3. 解压后可以得到zh-CN目录,进入到zh-CN目录下的RPMS目录
    
    4. 执行命令(rpm -ivh openoffice*.rpm)安装所有openoffice组件(*代表匹配所有);接着安装桌面集成程序,进入desktop-integration目录即可查看到针对不同linux发行版本提供的openoffice桌面集成程序rpm包,然后就可以根据自己所使用的linux系统发行版本来进行安装了
    
    5. 执行(rpm -ivh openoffice4.1.5-redhat-menus-4.1.5-9789.noarch.rpm)到该命令执行完成
    
    6. openoffice已经成功安装,进入到/opt/openoffice4/program
    
    7.执行命令(soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard &)启动openoffice;
    执行命令(ps -ef|grep soffice)查看服务是否启动
    
    
    • 安装jodconverter
    1. https://sourceforge.net/projects/jodconverter/下载jodconverter-2.2.2
    
    2. 拷贝jodconverter-2.2.2 到 /usr/local/java
    
    3. cd jodconverter-2.2.2 执行pwd
     
    4. 使用jodconverter-2.2.2进行文档转换(java -jar /usr/local/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar /tmp/001.doc /tmp/001.pdf)路径必须是绝对路径进行转换
    
    
    • 切换yum源
    1. 首先执行命令。
    curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    
    2. 清空yum 缓存 yum clean all
    
    3. 执行yum  makecache
    
    
    • 解决中文乱码
    1. 拷贝wind字体到服务器 /usr/share/fonts/, win字体在 C:/windows/fonts/
    
    2. cd /usr/share/fonts/ 执行chmod 755 *.ttf
    
    3. 执行 mkfontscale 
    
    4. 执行 mkfontdir 
    
    5. 安装 yum -y install ttmkfdir 执行 ttmkfdir -e /usr/share/X11/fonts/encodings/encodings.dir
    
    6. fc-cache 或者 fc-cache -vf
    
    
    • 对上传的文档进行转换并且加水印
    /**
     *  tp5 准备工作
     *  composer require setasign/fpdf
     *  composer require setasign/fpdi
     *  pdf加水印的方法
     */
     
     if(!function_exists('PdfWriteWater')){
        function PdfWriteWater($file = '',$add_type = 1,$contentOrfile = '')
        {
            $pdf = new \setasign\Fpdi\Fpdi();
            //获取页面计数
            $pageCount = $pdf->setSourceFile($file);
            for ($pageNo = 1;$pageNo <= $pageCount;$pageNo++)
            {
                //导入页面
                $templateId = $pdf->importPage($pageNo);
                //获取导入页面的大小
                $size = $pdf->getTemplateSize($templateId);
                //创建页面(横向或纵向取决于导入的页面大小)
                if ($size['width'] > $size['height']){
                    $pdf->AddPage('L', array($size['width'], $size['height']));
                } else{
                    $pdf->AddPage('P', array($size['width'], $size['height']));
                }
                //使用导入的页面
                $pdf->useTemplate($templateId);
                if ($add_type == 1) {
                    //图片水印
                    $pdf->Image($contentOrfile, 10, 10, 100);
                }elseif($add_type == 2) {
                    //文字水印
                    $pdf->SetFont('chinese', '', 12);
                    // sign with current date
                    $pdf->SetXY(10, 50); // you should keep testing untill you find out correct x,y values
                    $pdf->Write(7, $contentOrfile);
                }
            }
            $name =  ROOT_PATH . 'public' . DS . 'uploads' . DS .'water_pdf-'.time().'.pdf';
    //        $pdfname = ROOT_PATH . 'public' . DS . $name;
            $pdf->Output('F',$name);
            return $name;
        }
    }
    
    
    /**
     *  php调用java通过jodconverter 在openoffice的服务下工作方法
     *
     */
     
      public function addWater($data)
        {
            $obj = $data['file'];
        
            //上传文件
            if ($obj)
                $info = $obj->move(ROOT_PATH . 'public' . DS . 'uploads' . DS . 'file');
        
            $filePath = $obj ? $info->getPathname() : ROOT_PATH . 'public' . DS . 'uploads' . DS . 'file' . DS . '999.docx';
        
            $savePdfPath = ROOT_PATH . 'public' . DS . 'uploads' . DS . 'pdf_' . time() . '.pdf';
        
        
            $waterPath = ROOT_PATH . 'public' . DS . 'images' . DS . 'chbd.png';
        
            $cmd = "/usr/local/java/jdk1.8.0_131/bin/java -jar /usr/local/java/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar $filePath $savePdfPath";
        
            exec($cmd, $arr, $status);
        
            if($status == 0) {
                $name = PdfWriteWater($savePdfPath, 1, $waterPath);
        
                return $name;
            }
        
            return [];
        }
    
    展开全文
  • QT读Word文档内容

    2020-05-01 11:44:29
    其次在.h中添加头文件,并声明变量及相关函数。 #include <QAxWidget> #include <QAxObject> #include <QAxBase> public: void read_word(); QString getAllText(); private...

    首先在.pro文件中添加

    QT += axcontainer

    其次在.h中添加头文件,并声明变量及相关函数。

    #include <QAxWidget>
    #include <QAxObject>
    #include <QAxBase>
    public:
      void  read_word();
       QString getAllText();
    private:
        QAxWidget *m_word;
        QAxObject *m_document;
        QAxObject *m_doc;

    最后在.cpp文件中实现相关函数

    void Widget::read_word()
    {
    QString file_path("F://ClientData//text4.doc");//读取F:\ClientData\text4.doc
           m_word = new QAxWidget("Word.Application");
            //m_doc->generateDocumentation (); //导出支持的函数以及相关属性
    
            m_document = m_word->querySubObject("Documents");
            m_document->dynamicCall("Open(const QString&)",file_path);
            m_word->setProperty("Visible",QVariant(false));   //不显示word窗口
            m_doc = m_word->querySubObject("ActiveDocument");//获取当前工作簿
    
              QString alltext = getAllText();
                qDebug() << "-------" << alltext;
               ui->textEdit_print->setText(alltext);
                m_doc->dynamicCall("Close(boolean)",false);       //关闭文件
                m_word->dynamicCall("Quit()");
    
                delete m_word;
                m_word = nullptr;
    }
    QString Widget::getAllText()
    {
        QString text;
        if (NULL == m_doc)
            return text;
    
        QAxObject *pRange = m_doc->querySubObject("Range()");
    
        if (NULL != pRange)
        {
            text = pRange->property("Text").toString();
            delete pRange;
            pRange = NULL;
        }
        return text;
    }

    运行结果:

    参考博客:https://blog.csdn.net/chyuanrufeng/article/details/81157908

    展开全文
  • ,然后在模板里面也添加变量。我在运行的过程中模板也能够自动生成,里面的内容也能够完整显示出来。在生成的word里面能够看到图片占了位置,可是图片内容却显示不出来,我做了测试,我把之前图片转码成base64位的...
  • 采用Jacob生成Word文档

    2010-06-17 12:58:41
    Jacob1.11版本下载地址: ... 下载完以后,解压缩出来,把里面的jacob.jar添加到classpath中 把jacob.dll放入windows/system32下面 ...添加到系统环境变量中:右键我的电脑->属性->高级->系统变量 ...
    Jacob1.11版本下载地址:
    http://nchc.dl.sourceforge.net/sourceforge/jacob-project/jacob_1.11.1.zip

    下载完以后,解压缩出来,把里面的jacob.jar添加到classpath中
    把jacob.dll放入windows/system32下面
    添加到系统环境变量中:右键我的电脑->属性->高级->系统变量

    类一:WordService.java
    来源:(http://blog.sina.com.cn/s/blog_48ca8187010007wy.html) - 采用Jacob生成Word文档_别问我是谁_新浪博客

    import com.jacob.activeX.*;
    import com.jacob.com.*;
    /**
    * 采用Jacob1.11操作Word
    *
    * @author liuxt
    *
    */
    public class WordService extends java.awt.Panel {
    private static final long serialVersionUID=-1L;

    public ActiveXComponent MsWordApp = null;
    private Dispatch document = null;
    public WordService() {
    super();
    }
    public void openWord(boolean makeVisible) {
    //Open Word if we\'ve not done it already
    if (MsWordApp == null) {
    MsWordApp = new ActiveXComponent("Word.Application");
    }
    //Set the visible property as required.
    Dispatch.put(MsWordApp, "Visible",
    new Variant(makeVisible));
    }
    /**
    * 打开已知的word文档
    * @param markVisible 可视化状态
    * @param docPath 文档路径
    */
    public void openWord(boolean markVisible,final String docPath) {
    if (MsWordApp == null) {
    MsWordApp = new ActiveXComponent("Word.Application");
    }
    //Set the visible property as required.
    Dispatch.put(MsWordApp, "Visible", new Variant(markVisible));
    Dispatch docs = MsWordApp.getProperty("Documents").toDispatch();
    document = Dispatch.invoke(docs,"Open", Dispatch.Method, new Object[]{docPath}, new int[1]).toDispatch();
    }
    /**
    * 创建Word文档
    *
    */
    public void createNewDocument() {
    //Find the Documents collection object maintained by Word
    Dispatch documents = Dispatch.get(MsWordApp,"Documents").toDispatch();
    //Call the Add method of the Documents collection to create
    //a new document to edit
    document = Dispatch.call(documents,"Add").toDispatch();
    }
    /**
    * 插入文本
    * @param textToInsert
    */
    public void insertText(String textToInsert) {
    // Get the current selection within Word at the moment. If
    // a new document has just been created then this will be at
    // the top of the new doc
    Dispatch selection = Dispatch.get(MsWordApp,"Selection").toDispatch();
    //Put the specified text at the insertion point
    Dispatch.put(selection,"Text",textToInsert);
    }
    public void saveFileAs(String filename) {
    Dispatch.call(document,"SaveAs",filename);
    }
    public void printFile() {
    //Just print the current document to the default printer
    Dispatch.call(document,"PrintOut");
    }
    /**
    * 查找替换文本
    * @param searchText 需要查找的关键字
    * @param replaceText 要替换成的关键字
    */
    public void searchReplace(final String searchText,final String replaceText) {
    Dispatch selection=MsWordApp.getProperty("Selection").toDispatch();
    Dispatch find = ActiveXComponent.call(selection, "Find").toDispatch();
    //查找什么文本
    Dispatch.put(find, "Text", searchText);
    //替换文本
    Dispatch.call(find,"ClearFormatting");
    Dispatch.put(find, "Text", searchText);
    Dispatch.call(find, "Execute");
    Dispatch.put(selection, "Text", replaceText);
    }
    /**
    * 把指定的值设置到指定的标签中去
    * @param bookMarkKey
    */
    public void setBookMark(final String bookMarkKey,final String bookMarkValue) {
    Dispatch activeDocument=MsWordApp.getProperty("ActiveDocument").toDispatch();
    Dispatch bookMarks = ActiveXComponent.call(activeDocument, "Bookmarks").toDispatch();
    boolean bookMarkExist1=Dispatch.call(bookMarks,"Exists",bookMarkKey).getBoolean();
    if(bookMarkExist1==true){
    Dispatch rangeItem = Dispatch.call(bookMarks, "Item",bookMarkKey).toDispatch();
    Dispatch range = Dispatch.call(rangeItem, "Range").toDispatch();
    //取标签的值
    //String bookMarkValue=Dispatch.get(range,"Text").toString();
    //bookMarkValue="test";
    if(bookMarkValue!=null){
    Dispatch.put(range, "Text",new Variant(bookMarkValue));
    }
    }else{
    System.out.println("not exists bookmark!");
    }
    }
    /**
    * 保存Word文档到指定的目录(包括文件名)
    * @param filePath
    */
    public void saveWordFile(final String filePath) {
    //保存文件
    Dispatch.invoke(document, "SaveAs", Dispatch.Method, new Object[] {filePath, new Variant(0)} , new int[1]);
    //作为word格式保存到目标文件
    Variant f = new Variant(false);
    Dispatch.call(document, "Close", f);
    }
    public void closeDocument() {
    // Close the document without saving changes
    // 0 = wdDoNotSaveChanges
    // -1 = wdSaveChanges
    // -2 = wdPromptToSaveChanges
    Dispatch.call(document, "Close", new Variant(0));
    document = null;
    }
    public void closeWord() {
    Dispatch.call(MsWordApp,"Quit");
    MsWordApp = null;
    document = null;
    }
    }

    类二:WordExample.java
    import com.suypower.yxsj.common.WordService;
    public class WordExample {
    public static void main(String[] args) {
    WordService word=new WordService();
    word.openWord(true);
    word.createNewDocument();
    word.insertText("Hello word.");
    word.searchReplace("Hello", "哈喽");
    word.setBookMark("bookMarkKey","bookMarkValue");
    //word.MsWordApp.setProperty("UserName","xiantongsky");
    //word.saveWordFile("D:/xiantong.doc");
    }
    }
    展开全文
  • 文档是STM32的库函数的Word版本,为完全版本,一目了然:如常量的定义、变量的由来、函数定义的解释。 以及Excel版本的寄存器,较PDF格式,容易浏览和增加备注,色彩鲜明。在开发过程中,可以添加如注意事项之类的...
  • Q: word2013文档, 在页眉中显示page X of Y, 但是Y 总是显示总页数,不能显示每节的页数....对于域, 插入的时候要用ctrl+F9 就会在页眉上添加{ },然后可以在里面输入变量。 对于显示/隐藏文档中的

    Q: word2013文档, 在页眉中显示page X of Y, 但是Y 总是显示总页数,不能显示每节的页数. 如何按把Y按照每节的总页数而不是整个文档的页数显示?

    A:首先了解WORD2013域的概念。

    word2013 的域在英文显示field, 在插入的RIBBON中.

    对于域, 插入的时候要用ctrl+F9 就会在页眉上添加{ },然后可以在里面输入变量。

    对于显示/隐藏文档中的域代码,用alt+f9来实现.交替按就可以显示与隐藏.

    {pages}--显示当前页数

    {numpages}--显示总的页数

    {sectionpages}--显示当关段的页数.


    对于不同的分节,可以用 page {pages} of {sectionpages}就可以满足要求.

    分节符实际上就是为了不同的章节以第一页开始服务的。


    谢谢


    展开全文
  • 最近接到个需求,由于客服这边要导出大量有一定规则的word文件,里面的内容希望系统自动填充,例如 这里我使用Aspose.Words.dll这个类库, 1.首先,我们需要创建模板文件,毕竟有规则的东西才好开发。在各个位置...
  • 最近接到个需求,由于客服这边要导出大量有一定规则的word文件,里面的内容希望系统自动填充,例如 这里我使用Aspose.Words.dll这个类库, 1.首先,我们需要创建模板文件,毕竟有规则的东西才好开发。在各个位置...
  • 最近项目导出word碰到一个需求,要求根据数据动态的决定word里的复选框是否勾选, 公司导出word用的是freemarker,相比较其他技术,...首先我们要知道在word里打钩和不打勾的复选框究竟是什么,新建一个word文档,在里面...
  • word中选择一段需要保存的文字,找到“插入”-“文档部件”-“保存到图文库” 修改“名称”为这段文字的id 文本域autotext的使用 快捷键“ctrl”+“F3”出现一个“{ }”,在大括号里输入 autotext 保存的文字,...
  • 使用ODBC数据源管理器,添加系统DSN,驱动程序选择"Miscosoft Access Driver(*.mdb)",数据源名填写"files",并按"选择"按钮选择jakarta-tomcat目录下的webappsjspsmartuploaduploadfiles.mdb文件。比如,D:Tomcat 4.0...
  • 开始想着用freemark做模板解析,但是freemark生成的word文档,无法用poi转化为pdf文档,最后放弃了,只能自己着手写。 在poi的官方代码中提供了四种添加行的方法: table.addNewRowBetween 官方没实现 table....
  • 偏偏在某些时候我们还真就需要为指定的字符添加上划线,比如在数学文档中要输入平均数的数学符号,就是在指定变量上加一个短线条。那么,此时此刻,我们应该怎么来做呢?以下几个小小的招数,也许就可以助你一臂之力...
  • oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 第一章 Oracle入门 一、 数据库概述 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前。简单来说是本身可视...
  • 新建一个宏,其代码如下 ...'ActiveDocument.Paragraphs.Count返回文档的段落数 ' 定义一个整形变量numpara,来存储段数 Dim numpara As Integer numpara = ActiveDocument.Paragraphs.Count '用循环遍历...
  • 添加到path环境变量中)。 预编译的LFTM.jar文件和源代码分别位于jar和src文件夹中。 用户可以通过简单地运行ant重新编译源代码(也期望已经安装了ant )。 此外,用户可以在test文件夹中找到输入示例。 输入主题...
  • java实现word模板导出

    2021-04-19 16:13:33
    java实现word模板导出 以下文档为例 方案一 通过freemarker模板引擎 步骤 1.制作模板 使用freemark语法填充变量 另存为xml格式 使用记事本工具检查${}是否连贯,把中间的内容删除即可 在循环处增加<#list 集合名 ...
  • 2、新建word文档。 3、将文档另存为xml 格式。 4、将xml格式化后打开编辑(最好用notepad,有格式),找到需要替换的内容,将内容换为变量(${变量名})。 5、生成表格,包括动态列和动态行。其中columnList ...
  • 简介 工作中常用md文档,可是输出给客户不得不转成word格式。使用Typora将.md文件导出为word格式有...添加到环境变量中 验证 执行pandoc -v ,验证成功。 执行脚本 pandoc “D:\summer\工作日志.md” -o “D:\summ
  • 2、文中含有大量公式,若读者需要获取含公式原稿Word文档,可关注公众号【AI机器学习与知识图谱】后回复:概率图模型第四讲,可添加微信号【17865190919】进公众号讨论群,加好友时备注来自CSDN。原创不易,转载请...
  • 百度地图开发文档

    2012-10-19 11:38:01
    word-wrap:break-word} </style> [removed][removed] </head> <body> <!--百度地图容器--> ;margin:auto auto;" id="dituContent"> </body> [removed] //创建和初始化地图函数: ...
  • ZendFramework中文文档

    2011-03-22 10:11:12
    11.1. 输出变量的值 (Dumping Variables) 12. Zend_Exception 12.1. 使用“异常” 13. Zend_Feed 13.1. 介绍 13.2. 导入Feeds 13.2.1. 定制 feeds 13.2.1.1. 导入定制的数组 13.2.1.2. 导入定制的数据源 ...
  • //增加Post变量 document.all.FramerControl1.HttpAddPostString("RecordID","20060102200"); document.all.FramerControl1.HttpAddPostString("UserID","李局长"); //上传打开的文件 document.all.FramerControl1....
  • 变量和脚本 - 18 - 路由优先级 - 18 - 服务器静态资源 - 18 - staticDir: mapping - 18 - staticFile: mapping - 19 - URL 编码 - 19 - 反转路由:用于生成某些URL - 19 - 设置内容风格(CSS) - 20 - HTTP 内容协商 ...
  • 条形码、中式财务帐薄、支持在报表中嵌入Word、Excel文档等。 4. 强大的计算和合计功能。内置表达式解析系统和函数库。 5. 可扩充性,可以在应用程序中给报表引擎扩充函数库、报表样式和单元格样式。 6.支持多种报表...
  • 在文件中找到 195-201 代码,并在 201行后面添加如下代码: 195 copy_loop: 196 ldmia r0!, {r3-r10} /* copy from source address [r0] */ 197 stmiar1!, {r3-r10} /* copy to target address [r1] */ 198 cmp ...
  • 1.3.3 文档窗口 1.3.4 工具箱 1.3.5 解决方案管理器 1.3.6 属性窗口 1.3.7 错误列表窗口 1.4 安装SQL Server 2005 1.5 ASP.NET应用程序基础 1.5.1 创建ASP.NET应用程序 1.5.2 运行ASP.NET应用程序 1.5.3 编译ASP.NET...
  • 1.3.3 文档窗口 1.3.4 工具箱 1.3.5 解决方案管理器 1.3.6 属性窗口 1.3.7 错误列表窗口 1.4 安装SQL Server 2005 1.5 ASP.NET应用程序基础 1.5.1 创建ASP.NET应用程序 1.5.2 运行ASP.NET应用程序 1.5.3 编译ASP.NET...

空空如也

空空如也

1 2 3 4 5 ... 13
收藏数 242
精华内容 96
关键字:

word文档添加变量