EDA365电子论坛网

标题: 程序实现文字转化成图片 [打印本页]

作者: House    时间: 2020-4-29 09:49
标题: 程序实现文字转化成图片
程序实现文字转化成图片
# L( l  }* N  C1 r
rgb三通道中,R通道存放文本信息,G通道产生中心涣散圆形,B通道产生全图小涣散圆形
9 L- C4 b; F: R; Q% C7 b主要应用的是unicode2native指令,非加密转换, |4 H' Y* D9 a5 v+ [& q

5 r3 Z6 a2 E4 ?8 R( L
. P2 r3 x- f( D. w& Z" d. p
* u# ?4 m% h+ M8 {) z
/ S' V, A! ?. X. z4 @# W: P" qfunction word2picmain()- F" j% V1 y) C' r# |' B/ N* ^# Q1 P
%程序实现文字转化成图片" f8 B2 F" z( ^: w; g6 c2 g* L6 s, }
%%//////////////////////////////////////////////////////////////////////" t. W" L# I5 ?
%rgb三通道中,R通道存放文本信息,G通道产生中心涣散圆形,B通道产生全图小涣散圆形( k9 b  a$ E/ q
%主要应用的是unicode2native指令,非加密转换
6 i9 z$ ]( G  f$ X9 {' [7 [  H* L  Z% {& \7 a3 L1 c/ A- ?
%%//////////////////////////////////////////////////////////////////////7 I8 {& [  [& v# B1 [/ f
clc9 b0 `- g. K+ K! `+ X
clear all2 v0 m& I% R: t) r1 v1 q  Z# I8 M
a='七夕节快乐O(∩_∩)O哈哈~';%你想要转换的文字
1 B7 Y( l* ]. j" o1 k& C$ Hb=makepic(a,50,50);
/ b( o$ O8 C' v9 R2 M% J8 himshow(b)( y) S4 n: L* c% R% Z3 x; s
imwrite(b,'my.bmp');
" T, J! A$ D, l# K( fmb=double(imread('my.bmp'))/255;%生成的图像是1~255,而matlab归一化成了0~1,所以要换回来
! A8 f7 Y7 X1 t) `, J6 ~& }" itxt=makeword(mb,50,50)
* Z6 J# _: j+ z( G, e4 Aend6 x! x* u5 v" r7 V. D
%%//////////////////////////////////////////////////////////////////////
8 E" D" s# }) ]. ]8 `function =makepic(txt,cx,cy)  b# B* g& t: j7 {
%[cx,cy]是图片中存放文本数据长度信息位置坐标4 O6 M+ H& q0 F8 c/ ?
a=txt;
  d% m# T7 @# }( p+ c. l, `$ tca=unicode2native(a,'UTF-16BE');. b4 W( s" W% o8 ]; `
b=zeros(100,100,3);3 h8 J9 x5 ^3 b5 O+ c3 z9 C
num=size(ca,2);
2 Z# t/ V1 _1 a% V. M4 Dst=0;0 I! j7 }9 \+ b( r0 s
for i=1:100% `1 l9 ~6 f0 o; c; S
    for j=1:100% B5 D" b6 b7 C0 K: x
        sp=ceil(mod(st,num))+1;  
+ q  w' c) r. R, e8 P8 I        b(i,j,1)=double(ca(sp))/255;
/ R4 @' M- {) g. l6 S0 g        b(i,j,2)=1-((i-50)^2+(j-50)^2)/5000;
% q  l: n2 k: R" {        rcx=ceil(i/8)*8-4;) k% A( P* J7 x5 r1 g7 P. n4 o7 Z
        rcy=ceil(j/8)*8-4;- B' B. L- f8 U; H( i2 |, u% A
        b(i,j,3)=(((i-rcx)^2+(j-rcy)^2)/32);
" ^6 D) L4 j2 R+ k3 \1 J8 U        st=st+1;
5 e# K5 _$ H/ d% z; v    end0 J$ O% l3 o7 x( h' E* g
end7 u' ~9 F, a+ W4 ^7 o$ v& s/ O3 z. J
b(cx,cy,2)=1-(ceil(num/100)-1)/10;& j( N* F" e% q4 R
b(cx,cy,3)=1-mod(num,100)/100;
* A, V' a2 b. [end8 a' k# i$ \! L' n
& r, ]  z: U0 U) ]6 }
%%//////////////////////////////////////////////////////////////////////
2 Z, q1 U3 I  {7 y5 \9 \function [txt]=makeword(img,cx,cy)* p2 y  s2 n7 g/ a
num=uint16((1-img(cx,cy,3))*100+(1-img(cx,cy,2))*100*10)9 k& x& a& x0 p. H5 y
lsb=zeros(100,100);
4 R, e6 h& L, a( [6 C, s" Wnsp=[];# [* o; w8 |; J% G) w
for i=1:100
4 a0 J- R$ h. m2 ~6 E    for j=1:100
# O+ t0 z0 X, x; q/ d4 t" h, ~        nsp=[nsp img(i,j,1)*255];
1 \8 J; x' M( W    end; _3 K7 A5 L6 r% A% d- \0 v* R  Q5 U
end* H0 r" d' s! ?: U+ E( H* C
txt=native2unicode(nsp(1:num),'UTF-16BE')& a/ R' T7 Y$ Z7 m- v* t6 U- L+ d1 I
end" C0 e8 E2 m3 g: ?0 x( d/ t( I6 j
%%//////////////////////////////////////////////////////////////////////. q6 y* v! ^$ r: s& o

3 o; I% W+ O5 D, f, Z/ L, O
作者: ononsiiii    时间: 2020-4-29 15:58
rgb三通道中,R通道存放文本信息,G通道产生中心涣散圆形,B通道产生全图小涣散圆形 主要应用的是unicode2native指令,非加密转换




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2