当前位置:编程学习 > C#/ASP.NET >>

C#中如何实现这种文字效果

C#中如何实现这些效果
有3个输入框
要贴的字:中
前景字符:国
背景字符:。
然后就可以生成下面的效果
。。。。。。。。。。。。。。。。。。。
。。。。。。。。国国。。。。。。。。。
。。。。。。。。国国。。。。。。。。。
。。。。。。。。国国。。。。。。。。。
。。国国国国国国国国国国国国国国。。。
。。国国。。。。国国。。。。国国。。。
。。国国。。。。国国。。。。国国。。。
。。国国。。。。国国。。。。国国。。。
。。国国。。。。国国。。。。国国。。。
。。国国。。。。国国。。。。国国。。。
。。国国国国国国国国国国国国国国。。。
。。。。。。。。国国。。。。。。。。。
。。。。。。。。国国。。。。。。。。。
。。。。。。。。国国。。。。。。。。。
。。。。。。。。国国。。。。。。。。。
。。。。。。。。国国。。。。。。。。。
。。。。。。。。国国。。。。。。。。。
。。。。。。。。。。。。。。。。。。。 --------------------编程问答--------------------                 ■■■■■■■■■■
             ■■■■■■■■■■■■■■■
            ■■■■■■■■■■■■■■■■■
          ■■■■■■■■■■■■■■■■■■■■■
          ■■■■■■■■■■■■■■■■■■■■■■
         ■■■■ ■■■■■■■■■■■■■■■■■■
        ■■■■   ■■■■■■■■■■■■■■■■■■
        ■■■   ■■■■■■■■■■■■■■■■■■■■
       ■■■■   ■■■■■■■■■■■■■■■■■■■■
       ■■■■  ■■■■■■■■■■■■■■■■■■■■■■
      ■■■■   ■■■■■■■■■■■■■■■■■■■■■■
      ■■■■  ■■■■■■■■■■■■■■■■■■■■■■■■
      ■■■■  ■■■■■■■■■■■■■■■■■■■■■■■■
      ■■■■  ■■■■■■■■■■■■■■■■■■■■■■■■
     ■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■
     ■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■
  ■■ ■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■
  ■■■■■■■  ■■■■■■■■■■■■■■■■■■■■■■■■■■■■
   ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
    ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
    ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
     ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
    ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
    ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
    ■■■■  ■■■■■■■■■■■■■■■■■■■■■■■■■■■
    ■■■■  ■■■■■■■■■■■■■■■■■■■■■■■■■■■
    ■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■
     ■■■■  ■■■■■■■■■■■■■■■■■■■■■■■■■■
     ■■■■  ■■■■■■■■■■■■■■■■■■■■■■■■■■
      ■■■■  ■■■■■■■■■■■■■■■■■■■■■■■■
      ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
        ■■■■■■■■■■■■■■■■■■■■■■■■■■
         ■■■■■■■■■■■■■■■■■■■■■■■■
            ■■■■■■■■■■■■■■■■■■ --------------------编程问答-------------------- LS的怎么弄的啊??? --------------------编程问答-------------------- 楼主的需求和1楼的还是有点区别
楼主可能需要的是黑白这种纯文本的而非1楼那种带html标签的

可以去解析像素,然后按照相应的像素值进行合理的填充
不难

1楼不仅进行二值的解析还解析了颜色,然后给填充字符包上颜色标签 --------------------编程问答-------------------- 。。。。。接。。。接。。。。。。
。。。。。接。。。接。。。。。。
。。。。接。。。。。接。。。。。
。。。。接。。。。。接。。。。。
。。。接。。。。。。。接。。。。
。。接。接接接接接接接。接。。。
。。。。。。接。。。接。。。。。
。。。。。。接。。。接。。。。。
。。。。。接。。。。接。。。。。
。。。。接。。。。。接。。。。。
。。接接。。。接接接。。。。。。
。。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。。

原理差不多,楼主自己优化吧

private void button1_Click(object sender, EventArgs e)
{
    if (textBoxChar.Text.Length <= 0) return;
    if (textBoxBack.Text.Length <= 0) return;
    if (textBoxFore.Text.Length <= 0) return;
    Graphics vGraphics = CreateGraphics();
    SizeF vSizeF = vGraphics.MeasureString(textBoxChar.Text, Font);
    vGraphics.Dispose();
    Bitmap vBitmap = new Bitmap((int)vSizeF.Width, (int)vSizeF.Height);
    vGraphics = Graphics.FromImage(vBitmap);
    RectangleF vRectangleF = new RectangleF(0, 0, vBitmap.Width, vBitmap.Height);
    StringFormat vStringFormat = new StringFormat();

    vGraphics.DrawString(textBoxChar.Text, Font, Brushes.Black, 0, 0);
    vGraphics.Dispose();
    StringBuilder vBuffer = new StringBuilder();
    for (int i = 0; i < vBitmap.Height; i++)
    {
        for (int j = 0; j < vBitmap.Width; j++)
        {
            Color vColor = vBitmap.GetPixel(j, i);
            if (vColor.ToArgb() != 0)
                vBuffer.Append(textBoxFore.Text);
            else vBuffer.Append(textBoxBack.Text);
        }
        vBuffer.AppendLine();
    }
    textBoxOutput.Text = vBuffer.ToString();
}
--------------------编程问答-------------------- 有3个输入框 
1 要贴的字:中 
2 前景字符:国 
3 背景字符:。

4 窗体中留出一块显示结果。

依次取第一个输入框内的象素值,转换成一个字符串。
如果是白:字符串 += 背景字符;
如果是黑:字符串 += 前景字符;
每行结束:字符串 += 回车换行;
显示字符串;
--------------------编程问答-------------------- 哈,说晚了 --------------------编程问答-------------------- 高手.....学习ING..... --------------------编程问答-------------------- 不错...学习了.... --------------------编程问答-------------------- 学习,以前只知道用C画个简单的... --------------------编程问答-------------------- 感谢各位,自己再去研究下 --------------------编程问答-------------------- 哈哈,佩服 --------------------编程问答-------------------- 受教了。赫赫 --------------------编程问答-------------------- 學習中. --------------------编程问答-------------------- 0_0 --------------------编程问答-------------------- 很容易的说。 --------------------编程问答--------------------       床上等你!床上
    等你!床上等你!床上等
   你!床上等你!床上等你!床
  上等你!床上等你!床上等你!床 上
 等你!床上等     你!床上等你!
 床上等你        !床上等你!                      床上等
你!床上等         你!床上等                      你!床
上等你!         床上等你!床                      上等你
!床上等                                     你!床
上等你!                   床上等你!床       上等你! 床上等  你!床  上等你!
床上等你                  !床上等你!床上    等你!床上等你!床上  等你!床上等你!床上
等你!床                 上等你    !床上   等你!   床上等你  !床上等   你!床上  等你
!床上等          你!     床上等         你!床     上等你  !床上     等你!  床上
等你!床上        等你!床上   等你!床上等      你!床     上等你  !床上     等你!  床上
 等你!床        上等你!床    上等你!床上等你   !床上     等你!  床上等     你!床  上等
 你!床上等你    !床上等你!        床上等你!床  上等你     !床上  等你!     床上等  你!
  床上等你!床上等你!床上等你!           床上等  你!床     上等你  !床上     等你!  床上
   等你!床上等你!床上等你!     床上等    你!床   上等你   !床上等  你!床     上等你
    !床上等你!床上等你!       床上等你!床上等    你!床上等你!床上等  你!床     上等你  !床
      上等你!床上等          你!床上等你       !床上等 你!床  上等你     !床上  等你 --------------------编程问答-------------------- 8错~~ --------------------编程问答-------------------- 不错不错 --------------------编程问答-------------------- 学习中……感谢…… --------------------编程问答-------------------- o --------------------编程问答-------------------- 很好,很强大 --------------------编程问答-------------------- 字符画字符画字符画字符画字符画字符画字符画字
符画字符画字符画字符画字符画字符画字符画字符
画字符画字符画字符画字符画字符画字符画字符画
字符画字符画字符画字符画字符画字符画字符画字
符画字符画字符画字符画字符画字符画字符画字符
画字符画字符画字符画字符画字符画字符画字符画
字符画字符画字符画字符画字符画字符画字符画字
符画字符画字符画字符画字符画字符画字符画字符
画字符画字符画字符画字符画字符画字符画字符画
字符画字符画字符画字符画字符画字符画字符画字
符画字符画字符画字符画字符画字符画字符画字符
画字符画字符画字符画字符画字符画字符画字符画
字符画字符画字符画字符画字符画字符画字符画字
符画字符画字符画字符画字符画字符画字符画字符
画字符画字符画字符画字符画字符画字符画字符画
字符画字符画字符画字符画字符画字符画字符画字
符画字符画字符画字符画字符画字符画字符画字符
画字符画字符画字符画字符画字符画字符画字符画
字符画字符画字符画字符画字符画字符画字符画字
符画字符画字符画字符画字符画字符画字符画字符
画字符画字符画字符画字符画字符画字符画字符画
字符画字符画字符画字符画字符画字符画字符画字

以前我在资源区发过一个C#写的付源码的,不过链接记不得了.... --------------------编程问答-------------------- 怎么样控制每一个字体颜色呢? --------------------编程问答-------------------- 字符画,AS实现实现起来非常容易的~ --------------------编程问答-------------------- 学习中……感谢…… --------------------编程问答-------------------- 学习了 --------------------编程问答-------------------- 学习中
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,