Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails以这种格式打印文本文件中的地址标签_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails Rails以这种格式打印文本文件中的地址标签

Ruby on rails Rails以这种格式打印文本文件中的地址标签,ruby-on-rails,ruby,Ruby On Rails,Ruby,我有一个Rails应用程序,它存储杂志订阅者的地址。它应该允许下载地址作为文本文件中的标签,这样就可以用点阵打印机打印 每个订户都有一个姓名,姓名前缀(“先生”、“小姐”等),地址,区域,zipcode,等等 输出应具有以下格式: 2013年5月30日g51/b18468 Postgg 2013年5月30日N51/b39897 Postgg 2013年5月30日LR51/b23428 Postgg 2013年5月30日 Rgv。XXXXX BBNMBNN.M先生,兄弟。bBRbgbM.S, Kb

我有一个Rails应用程序,它存储杂志订阅者的地址。它应该允许下载地址作为文本文件中的标签,这样就可以用点阵打印机打印

每个订户都有一个
姓名
姓名前缀
(“先生”、“小姐”等),
地址
区域
zipcode
,等等

输出应具有以下格式:

2013年5月30日g51/b18468 Postgg 2013年5月30日N51/b39897 Postgg 2013年5月30日LR51/b23428 Postgg 2013年5月30日
Rgv。XXXXX BBNMBNN.M先生,兄弟。bBRbgbM.S,
KbgbNg bSSgMBLY Og gOg GOMMUNTY ggNTRg KbMPUNg gRbgg第92标段,
52,gLN。特穆尔,BbTU 4439504,洛朗SS 23/6g,
邮政信箱20,43007 KbgbNg SUNgbn PgLnK 47400 PgTbLnNg gbYb,
MbLbYSnb SgLbNgUR SgLbNgOR,W.MbLbYSnb
MbLbYSnb MbLbYSnb
2013年5月30日的ML51/b13179 Postgg和2013年5月30日的51/b41363 Postgg以及2013年5月30日的Lg51/b29053 Postgg
兄弟。bBRbgbM.V兄弟。bLbPPbN Pbstor。bLgRgg PRbgbSbM
编号:18,PgRSnbRbN第60号,洛龙SgRbn PgRMbn 9,1-2-2,MggbN nNTbN bPbRTMgNT,
RnSgbg.7万亿SgRbn PgRMbn,gbLbN 1/21g Ogg gbLbN gOMBbK
TbMbN RnSgbg 34300,BbTbN SgRbn,吉隆坡53000
30100 nPOg,PgRbK PgRbK MbLbYSnb
MbLbYSnb MbLbYSnb
2013年5月30日LR510b13172邮政编码ML51/b9877 2013年5月30日邮政编码LR51/b9905 2013年5月30日邮政编码
社交网站。bLLbMbg(b)NgSbM Bro。b.b.b.b.b.b.b.b.b.b.b.b.女士
编号:44,gbLbN gbMbn编号:3,gbLbN TgRbTbn 3 7,gbLbN PbRn
TbMbN TbPbg gbYb TbMbN SbRn,TgRbTbn PbRn gbRggNS
35000 TbPbg 44000 KUbLb KUBU BgbRU nPOg,30100
PgRbK,SgLbNgOR PgRbK
MbLbYSnb MbLbYSnb MbLbYSnb MbLbYSnb
2013年5月30日ML51/b13180 Postgg 2013年5月30日ML51/b13203 Postgg 2013年5月30日g51/b9942 Postgg 2013年5月30日
兄弟。托尼兄弟。bNTONYSWbMY Pbstor。bROKnbNbTgbN
编号:399,洛龙KgNbVn 3/2b LbgbNg gUSUN gURnbM编号:M4 g/7
TbMbN KGNBNRn 42700 BbNTnNg gbLbN PbNgbN nNgbg 4/1b
09000 KULnM SgLbNgOR g.g PbNgbN nNgbg
Kggbg MbLbYSnb 55100,吉隆坡库布
MbLbYSnb MbLbYSnb
我把名字和地址弄乱了

所以基本上每个标签都是这样的:

发布在
史蒂夫·罗宾逊先生
地址:布瑟街35号,
阿瓦迪卡马拉杰·纳加尔
钦奈-600071
仅当列宽为上述标签格式时,打印机才会在标签页中打印

如何从Rails打印这种文本文件

我试过PDF creator,但PDF打印在我们的点阵中很糟糕

如何做到这一点

更新:

我看到一个投票说它不清楚。
我想单击一个按钮,该按钮将下载包含指定格式的所有地址的文本文件。我想用这种三列格式打印地址,精确的列宽和每行的行数。我不知道怎么做

如果可以保证列中每行的宽度不会超过列的宽度,则可以使用
sprintf
创建填充字符串。您的每一列都有37个字符宽,因此要打印三列,命令应该是
sprintf(“%-37s%-37s%-37s”,col1、col2、col3)
。您必须在每个字段中重复该操作。假设每行都有一个字符串。您需要从数据中生成每个字符串,例如将前缀与名称连接起来。

注意,如果您插入的任何字符串长度超过37,
sprintf
将不会自动截断该字符串,并将删除该行上的所有列<代码>“%-37.37s”将截断37个字符<代码>“%-37.30s”将截断为30个字符,等等。好的,所以。。。我有订阅者的记录数组。现在我对每个_切片生成一个包含3列的二维数组。然后我做一个each循环,在每次迭代中,我为每一行生成字符串并打印它们。我会尽量让你知道的!:)非常感谢。