找回密码
 立即注册

QQ登录

只需一步,快速开始

mindrayguowei

中级会员

122

主题

274

帖子

986

积分

中级会员

积分
986

活字格认证

QQ
mindrayguowei
中级会员   /  发表于:2015-8-11 10:26  /   查看:4746  /  回复:4
我需要在程序里面连续插入多幅图片,请问如何才能自动让图片之间用空格隔开? 现在是完全连在一起的。

另外,现在插入图片的时候是默认插入到光标所在位置,如何才能插入到某一个固定位置?

4 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2015-8-11 14:51:00
沙发
回复 1楼mindrayguowei的帖子

无法自动使用空格隔开,需要手动添加空格隔开。
在指定位置添加可以通过以下代码实现:

  1. public Form1()
  2.         {
  3.             InitializeComponent();
  4.             this.textControl1.Text = "fdsdsdsdsdsd";
  5.         }

  6.         private void addImageToolStripMenuItem_Click(object sender, EventArgs e)
  7.         {
  8.             if (openFileDialog1.ShowDialog() == DialogResult.OK)
  9.             {
  10.                 string fName = openFileDialog1.FileName;
  11.                 TXTextControl.Image img=new TXTextControl.Image(fName,1);
  12.                 img.ID = 22;
  13.                 int iSeed = 10;
  14.                 Random ro = new Random(10);
  15.                 int tick = ro.Next(20);

  16.                 //this.textControl1.Images.Add(img, 1);
  17.                 this.textControl1.Images.Add(img,new Point(4350,4066), TXTextControl.ImageInsertionMode.AboveTheText);
  18.             }
  19.         }
复制代码
回复 使用道具 举报
mindrayguowei
中级会员   /  发表于:2015-8-11 16:11:00
板凳
用这种方式可以在指定位置添加图片,那么理论上我添加的每一幅图片都可以指定一个坐标。但是我给每一幅图片都设置了固定坐标,还是都连在一起的。
以下是代码片段

           int left = _textControl.InputPosition.Location.X;
            
            System.Drawing.Point location = _textControl.InputPosition.Location;
            
            try
            {
                for (int i = 0; i < imagePaths.Count; i++)
                {
                    Image image = new Image(imagePaths, i);
                    _textControl.Images.Add(image, location, ImageInsertionMode.MoveWithText);
                    location.X += image.Size.Width + 100;

                    if (location.X > _textControl.Width)
                    {
                        location = new System.Drawing.Point(left, location.Y + image.Size.Height + 100);
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }

你看看是哪里有问题吗?
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2015-8-11 18:08:00
地板
回复 3楼mindrayguowei的帖子

需要设置如下代码进行图片添加:

  1.                         textControl1.Images.Add(image, location, ImageInsertionMode.AboveTheText);
复制代码


MoveWithText基于当前已有的文件流是嵌入到文字里面的,无法在没有文字部分添加图片。
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2015-9-1 12:01:00
5#
回复 3楼mindrayguowei的帖子

为了给你提供更优质的服务,请对本次服务进行评分。我们会认真对待你提出的宝贵意见,谢谢
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部