字存为字符图片

□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□
□□□□□□□□□□■■■□□□□□□□□□□□□□□□□□□□□□
□□□□□□□□□■■■■□□□□■■■■■■■□■■□□□□□□□
□□□□□□□□■■■■■□□■■■■■■■■■■■■■□□□□□□
□□□□□□□■■■■■□□□■■■□□□□□■■■■■□□□□□□
□□□□□□■■■■■□□□□□□□□□□□■■■■■□□□□□□□
□□□□□□■■■■□□□□□□□□■■■■■■□□□□□□□□□□
□□■■■■■■■■■■■■□□□□□■■■■□□□□□□□□□□□
□■■■■■■■■■■■■■□□□□□□■■■□□□□□□□□□□□
□■■■□■■■■□■■■■■■■■■■■■■■■■■■■■■■□□
□□□□□■■■□□■■■□■■■■■■■■■■■■■■■■■□□□
□□□□□■■■■□■■■□■■□□□□■■■■□□□■■■□□□□
□□□□□■■■■□■■■□□□□□□□■■■■□□□□□□□□□□
□□□□□□■■■■■■□□□□□□□□■■■■□□□□□□□□□□
□□□□□□□■■■■■□□□□□□□□■■■■□□□□□□□□□□
□□□□□□□■■■■■■□□□□□□□■■■■□□□□□□□□□□
□□□□□□■■■■■■■■□□□□□□■■■■□□□□□□□□□□
□□□■■■■■■■□□■■□□□□□■■■■□□□□□□□□□□□
□□■■■■■■□□□□□■■■■■■■■■■□□□□□□□□□□□
□□□■■■□□□□□□□□□■■■■■■■□□□□□□□□□□□□
□□□□□□□□□□□□□□□□□■■■□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□

unit Unit3;

interface

uses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Dialogs, StdCtrls;

type
    TForm1 = class(TForm)
        Memo1: TMemo;
        Button1: TButton;
        Label1: TLabel;
        Edit1: TEdit;
        FontDialog1: TFontDialog;
        procedure Button1Click(Sender: TObject);
        procedure Edit1Change(Sender: TObject);
    procedure FormClick(Sender: TObject);
    private
    { Private declarations }
    public
    { Public declarations }
    end;

var
    Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
    i, j, w, h, l, t: Integer;
    st: string;
begin
    with label1 do
    begin
        l := Left;
        t := Top;
        w := Width;
        h := Height;
    end;
    Memo1.Lines.Clear;
    for j := t + 5 to h + t - 5 do
    begin
        st := '';
        for i := L to l + w do
        begin
            if self.canvas.Pixels[i, j] = ClBlack then
            begin
                st := st + '■'; ;
                canvas.Pixels[i + 200, j] := ClBlack;
            end
            else
                st := st + '□';

        end;
        memo1.Lines.Add(st)
    end;


end;

procedure TForm1.Edit1Change(Sender: TObject);
begin
    label1.Caption := edit1.Text;
end;

procedure TForm1.FormClick(Sender: TObject);
begin

    FontDialog1.Font := label1.Font;
    if FontDialog1.Execute then
        label1.Font := FontDialog1.Font;


end;

end.

C#代码

private   void  button5_Click( object  sender, EventArgs e)
        
{
            
int i, j, w, h, l, t;
            l 
= label1.Left;
            t 
= label1.Top;
            w 
= label1.Width;
            h 
= label1.Height;
            
string st;
            
this.richTextBox1.Clear();

            Bitmap image 
= new Bitmap(this.pictureBox1.Width, this.pictureBox1.Height);

            Graphics g 
= Graphics.FromImage(image);
            g.DrawString(label1.Text, label1.Font, 
new SolidBrush(this.ForeColor), 00);
            pictureBox1.Image 
= image;
            Bitmap bitmap 
= (Bitmap)pictureBox1.Image;
            Color c;
           
            
for (j = 0; j < h ; j++)
            
{
                st 
= "";



                
for (i = 0; i < w; i++)
                
{

                    c
=bitmap.GetPixel(i, j);
                    
if (c.ToArgb() != 0)
                    
{
                        st 
= st + "";

                    }

                    
else
                        st 
= st + "";
                }

                richTextBox1.Text 
+= st + " ";
               
            }


        }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值