`
lyjilu
  • 浏览: 175716 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

rtf替换图片,rtf插入图片

    博客分类:
  • java
阅读更多

前段时间,要做一个模版替换问题,将rtf文件中的某个未知加上信息以初始化文档。用rtf可能是最简单的方法,但是在有个地方需要插入一张图片。通过查找资料,得到如下的实现方式

 

while ((i = binput.read()) != -1) {
		    String str = i < 16 ? "0" + Integer.toHexString(i) : Integer
				.toHexString(i);
		    restr.append(str);
	    }

 这里对图片进行读取,由于rtf图片的二进制是处理过的,所以这将其转换,得到图片的16进制特定格式,restr是这个16进制串的存放StringBuffer

然后在使用时

 

result.append("{\\shp{\\*\\shpinst\\shpleft14\\shptop271\\shpright4383\\shpbottom6337\\shpfhdr0\\shpbxmargin\\shpbxignore\\shpbymargin\\shpbyignore\\shpwr2\\shpwrk0\\shpfblwtxt0\\shpz0\\shplid2050{\\sp{\\sn shapeType}{\\sv 75}}{\\sp{\\sn fFlipH}{\\sv 0}}{\\sp{\\sn fFlipV}{\\sv 0}}");
	    result.append("{\\sp{\\sn pib}{\\sv {\\pict\\picscalex5871\\picscaley8088\\piccropl0\\piccropr0\\piccropt0\\piccropb0\\picw132\\pich132\\picwgoal75\\pichgoal75\\jpegblip\\bliptag-27338650{\\*\\blipuid fe5ed8662283528c0df6c82776feb0dc}");
	    result.append(restr);
	    result.append("}");
	    result.append("}}{\\sp{\\sn pibFlags}{\\sv 2}}{\\sp{\\sn fRecolorFillAsPicture}{\\sv 0}}{\\sp{\\sn fUseShapeAnchor}{\\sv 0}}{\\sp{\\sn fLine}{\\sv 0}}{\\sp{\\sn posrelh}{\\sv 0}}");
	    result.append("{\\sp{\\sn posrelv}{\\sv 0}}{\\sp{\\sn dhgt}{\\sv 251660288}}{\\sp{\\sn fLayoutInCell}{\\sv 1}}}}");

 这么处理是由于rtf一些格式定义,可能rtf版本不同有差异。如果你不确定这里填什么,你可以在rtf中添加图片,然后查看源码。通过微软的rtf格式说明,能了解各个“标签”的使用方式。如果非要明确上面的{\\shp{...这些是什么意思,可以到微软官方去下载有关rft的说明,

 

 

这里只是说明怎么实现插入图片,如果你想在这找到全面的代码,那我还有什么说的。是不是把微软rtf标签使用,一个完整例子写出来,才是一篇好的文章。。

1
6
分享到:
评论

相关推荐

    word模板替换,插入图片

    本项目聚焦于“word模板替换,插入图片”,涉及到的技术包括jacob、rtf模板文件处理、docx4j、itext以及条码生成。下面将详细解释这些知识点。 1. **jacob**: jacob是Java和COM接口的一个桥梁,它允许Java程序...

    RichEdit中插入图片,文字以及美化设置

    本篇文章将详细探讨如何在RichEdit中插入图片、添加文字,并对文本进行美化设置。 一、插入图片 1. 使用API函数:在RichEdit中插入图片通常需要调用`EM_INSERTIMAGE`消息,这个消息可以将图片数据插入到编辑器中。...

    VC中RichEdit读取保存rtf文件

    如果你需要对图片进行特殊操作,如替换或添加图片,可能需要使用`CRichEditCtrl`的`EM_SETPROPERTY`消息和`IPropertySetStorage`接口。 5. **CFaceEditDemo示例**: 提供的`CFaceEditDemo`可能是一个包含以上功能...

    RichTextBox用法,RTF文件,rtf,文本文件导入RichTextBox

    它提供了比基本`TextBox`更强大的功能,如文本格式化、查找和替换、插入图片、超链接等。在设计时,可以通过属性设置来调整它的外观和行为,例如字体、颜色、对齐方式等。 2. RTF文件与`RichTextBox`: RTF是一种...

    Rtf Editor rtf编辑器

    - **嵌入对象**:可以插入图片、图表、链接、页眉和页脚等元素。 - **表格与列表**:创建和编辑表格,以及多级列表。 - **样式与模板**:预设样式,便于快速应用一致的文档格式。 - **查找与替换**:对文档进行...

    itext+itext-rtf+iTextAsian

    3. **更新PDF**:在现有PDF文档上添加或修改内容,例如插入新页、编辑文本或替换图片。 4. **签署PDF**:为PDF文档添加数字签名,确保其完整性和来源的真实性。 5. **表单处理**:填充PDF表单字段,或者创建交互式...

    C# RTF记事本 vs2005

    它支持RTF格式,允许用户进行字体选择、文本颜色设置、段落格式调整、插入图片等操作。在本项目中,richtextbox控件被用来实现记事本的主要功能,包括读取、写入和编辑RTF格式的文本文件。 四、记事本功能实现 1. ...

    ekrtf304_d7_delphi_rtf_3娱d7com_

    3. **RTF操作**:包括插入、删除、替换文本,改变字体、颜色、大小,以及添加图片等操作。 4. **兼容性**:该库设计时考虑了与各种RTF标准的兼容,确保处理的RTF文件可以在不同的系统和应用程序中正常工作。 5. **...

    MFC简易RTF编辑器

    但貌似有一点点Bug)、段落格式、插入图片、缩放、查找和替换等功能,所保存的文件兼容Microsoft Word 2013。该资源将不定期更新。 注:资源内含编译好的程序,但在不同的电脑上可能存在不兼容的情况,可以在自己的...

    pyqt-editor-2021:PyQt5上的RTF编辑器

    `QTextEdit`可以用来创建简单的文本编辑器或复杂的文档查看器,具有插入图片、表格和超链接等功能。 **构建PyQt5 RTF编辑器** 创建一个基于PyQt5的RTF编辑器通常涉及以下步骤: 1. **初始化PyQt5**:首先,你需要...

    RTFDemo_visualbasic6.0_文本编辑_vb6_

    RTF是一种通用的文本格式,能够支持各种字体、颜色、样式以及嵌入图片等富文本特性。VB6中的Text控件虽然可以处理基本的文本输入,但若要实现RTF格式的功能,就需要扩展其能力。RTFDemo项目正是为此而生,它通过集成...

    richedit研究 拷贝&粘贴初步实现效果

    对于“图文混排”这一标签,`CRichEditCtrl`允许在文本中插入图片和其他OLE对象。图片通常以嵌入的OLE对象形式存在,可以通过`EM_INSERTIMAGE`消息插入。在插入前,需要先将图片转换为OLE数据,并设置相关的图像属性...

    易语言超级编辑框依附-粘贴图片文字

    在实际应用中,我们常常需要在编辑框中不仅输入文字,还可能需要插入图片,以实现更丰富的展示效果。"依附"在这里可以理解为在编辑框中进行图片和文字的混合布局,使得它们能够和谐共存,用户可以通过快捷键进行操作...

    RichTextbox 添加表格与打印

    由于RTF语法复杂,也可以选择编写自定义方法来插入表格。通过控制字符和换行符,可以模拟表格结构。例如,可以创建一个函数,接受行数、列数和单元格内容作为参数,然后在`RichTextBox`中插入相应的文本。 **二、`...

    RichTextBox 控件中多重撤销重做的源代码

    2. 插入图片:除了文本,`RichTextBox`还可以插入图片,使用户能够创建更复杂的文档。 3. 支持RTF(Rich Text Format)和纯文本:可以处理RTF和纯文本两种格式的数据。 4. 多种操作事件:如`TextChanged`、`...

    DemoRichText.rar

    可以使用`richtextbox1.SelectionRtf`属性来插入图片的RTF代码。 3. **查找与替换**:演示如何在文本中进行查找和替换操作,这对于文本编辑器来说是核心功能。 4. **保存和加载RTF/HTML文件**:项目可能会展示如何...

    Delphi源码支持图片文字混排的jvrichedit..rar

    7. **代码示例**:在实际编程中,你可以编写如下的Delphi代码来插入图片并设置其文字环绕: ```delphi procedure TForm1.Button1Click(Sender: TObject); var ImgStream: TMemoryStream; begin ImgStream := ...

    Powerbuilder的富文本Rich控件 editor

    富文本编辑器通常被称为RTF(Rich Text Format)编辑器,它提供了比普通文本编辑更多的可能性,比如插入图片、设置文本格式、添加超链接等。在PowerBuilder中,开发者可以利用特定的控件来实现这些功能,这些控件...

    DEMO-APPLICATION-SOURCE.zip

    也可以使用`InsertImage()`方法插入图片,`SelectionHyperlink`属性和`LinkClicked`事件来处理链接。 4. **表格操作** `RichtextBox`可以插入和编辑表格,通过`SelectionTable`属性可以创建和访问表格对象,进行行...

Global site tag (gtag.js) - Google Analytics