当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 在RichTextBox控件加入图片

ASP.NET
blog程序新版本V2.0 Beta完成,提供V1.0全部源码下载
“/”应用程序中的服务器错误
asp.net(c#)复数类(复数加减乘除四则运算)
asp.net(c#)不可访问,因为它受保护级别限制
asp.net(c#) 水仙花数
ASP.NET实现用图片进度条显示投票结果
asp.net(c#) MS AJAX的安装
asp.net(c#)有关 Session 操作的几个误区
ASP.net基础知识之常见错误分析
[.net] 操纵自如-页面内的配合与通信
c# static的全部用法收集整理
使CheckBoxList的Attributes属性生效(修改微软的一个bug)
在ASP.NET中使用Session常见问题集锦
[原创]完美解决Could not load file or assembly ''AjaxPro.2'' or one of its dependencies. 拒绝访问。
在Apache环境下成功的运行ASP.NET的注意事项
ClickOnce DIY全自动更新下载升级的自我实现
asp.net jscript 一句话木马
在ASP.Net中实现flv视频转换的代码
将DataTable中的一行复制到另一个DataTable的方法
在DataTable中执行Select("条件")后,返回DataTable的方法

ASP.NET 中的 在RichTextBox控件加入图片


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 207 ::
收藏到网摘: n/a

using System;
using System.Collections.Specialized;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Runtime.InteropServices;
using System.Text;
using System.Windows.Forms;

namespace Khendys.Controls {

 #region Public Enums

 // Enum for possible RTF colors
 public enum RtfColor {
  Black, Maroon, Green, Olive, Navy, Purple, Teal, Gray, Silver,
  Red, Lime, Yellow, Blue, Fuchsia, Aqua, White
 }

 #endregion


 public class ExRichTextBox : System.Windows.Forms.RichTextBox {

  #region My Enums

  // Specifies the flags/options for the unmanaged call to the GDI+ method
  // Metafile.EmfToWmfBits().
  private enum EmfToWmfBitsFlags {

   // Use the default conversion
   EmfToWmfBitsFlagsDefault = 0x00000000,

   // Embedded the source of the EMF metafiel within the resulting WMF
   // metafile
   EmfToWmfBitsFlagsEmbedEmf = 0x00000001,

   // Place a 22-byte header in the resulting WMF file.  The header is
   // required for the metafile to be considered placeable.
   EmfToWmfBitsFlagsIncludePlaceable = 0x00000002,

   // Don't simulate clipping by using the XOR operator.
   EmfToWmfBitsFlagsNoXORClip = 0x00000004
  };

  #endregion

  #region My Structs

  // Definitions for colors in an RTF document
  private struct RtfColorDef {
   public const string Black = @"\red0\green0\blue0";
   public const string Maroon = @"\red128\green0\blue0";
   public const string Green = @"\red0\green128\blue0";
   public const string Olive = @"\red128\green128\blue0";
   public const string Navy = @"\red0\green0\blue128";
   public const string Purple = @"\red128\green0\blue128";
   public const string Teal = @"\red0\green128\blue128";
   public const string Gray = @"\red128\green128\blue128";
   public const string Silver = @"\red192\green192\blue192";
   public const string Red = @"\red255\green0\blue0";
   public const string Lime = @"\red0\green255\blue0";
   public const string Yellow = @"\red255\green255\blue0";
   public const string Blue = @"\red0\green0\blue255";
   public const string Fuchsia = @"\red255\green0\blue255";
   public const string Aqua = @"\red0\green255\blue255";
   public const string White = @"\red255\green255\blue255";
  }

  // Control words for RTF font families
  private struct RtfFontFamilyDef {
   public const string Unknown = @"\fnil";
   public const string Roman = @"\froman";
   public const string Swiss = @"\fswiss";
   public const string Modern = @"\fmodern";
   public const string Script = @"\fscript";
   public const string Decor = @"\fdecor";
   public const string Technical = @"\ftech";
   public const string BiDirect = @"\fbidi";
  }

  #endregion

  #region My Constants

  // Not used in this application.  Descriptions can be found with documentation
  // of Windows GDI function SetMapMode
  private const int MM_TEXT = 1;
  private const int MM_LOMETRIC = 2;
  private const int MM_HIMETRIC = 3;
  private const int MM_LOENGLISH = 4;
  private const int MM_HIENGLISH = 5;
  private const int MM_TWIPS = 6;

  // Ensu