首页 >> 手游攻略

writeas上层玩具(下)

大家好,今天小编来为大家解答以下的问题,关于writeas上层玩具(下),Flutter中如何实现图片转PDF这个很多人还不知道,现在让我们一起来看看吧!

木辛老师来了,本节课咱们一起来看看如何在Flutter中图片转PDF功能吧!

请点击右上角“关注”按钮关注我们哟:跟着木辛老师学习Flutter基础编程知识,变身快乐的编程达人吧~

PDF大家都用过吧(用过的都说好,谁用谁知道),它是一种很流行的格式,全称叫做便携式文档格式。

(没用过?不知道是啥?不好用?)

那好吧,萝卜白菜各有所爱,如果你需要那种不用修改内容,但是需要更好的分享以及打印效果的话,强烈推荐你使用PDF。试过就会爱上,爱上就不会丢弃!

既然,很有可能你会爱上PDF,那么今天通过这个教案就来看一下如何制作PDF把。

有这么两种方法:

第一种,逐个字符的将内容敲进文本文档或者MSword里边

第二种,或者使用今天我们讲到的知识点,直接对文档进行拍照,然后使用今天学习的代码直接转成PDF文件。

第一种还是第二种,怎么选择就看你咯。

好啦,来看看我们的方法。

使用pdf插件

pdf是一个flutter的扩展包,他被分成两个部分

第一个部分,一个底层的负责pdf生成的库

第二部分,想Flutter一样的组件系统,是一个简单易用的创建pdf的工具

据我局限的知识存量来说,它的使用是非常简单。它可以创建包括图形、图片、文本等等组织形式的多页文档,是全方位立体式的强有力的工具,并且用TrueType字体渲染。

如此牛牛的扩展包怎么用捏?

第一步:装他、装他、还是装他

在你的项目根目录下,修改pubspec.yaml文件内容:

dependencies:npdf:^3.6.5

同步!

你也可以使用如下命令直接安装它的最新版本

flutterpubaddpdf第二步:写代码

用之前要先导入

import'package:pdf/pdf.dart';nimport'package:pdf/widgets.dart'aspw;

然后实例化

finalpdf=pw.Document();

最后,就可以往这个文档中添加一页内容。同时,要指定这个文档的页面格式,在指定位置构建内容。

pdf.addPage(pw.Page(npageFormat:PdfPageFormat.a4,nbuild:(pw.Contextcontext){nreturnpw.Center(ntchild:pw.Text("HelloWorld"),n);//Centern}));//Page

如果你想使用一张图片,那么还需要实例化MemoryImage,并读取文件图片数据。

finalimage=pw.MemoryImage(nFile('test.webp').readAsBytesSync(),n);

之后,就可将这个图片数据添加到PDF文档中了,就像下方代码那样:

pdf.addPage(pw.Page(build:(pw.Contextcontext){nreturnpw.Center(ntchild:pw.Image(image),n);//Centern}));//Page

你也可以指定ttf(TrueTypeFont)

finalUint8ListfontData=File('open-sans.ttf').readAsBytesSync();nfinalttf=pw.Font.ttf(fontData.buffer.asByteData());nnpdf.addPage(pw.Page(npageFormat:PdfPageFormat.a4,nbuild:(pw.Contextcontext){nreturnpw.Center(nttchild:pw.Text('HelloWorld',style:pw.TextStyle(font:ttf,fontSize:40)),n);//Centern}));//Page

写完了,一定不要忘记保存文件

//OnFlutter,usethe[path_provider](https://pub.dev/packages/path_provider)library:n//finaloutput=awaitgetTemporaryDirectory();n//finalfile=File("${output.path}/example.pdf");nfinalfile=File("example.pdf");nawaitfile.writeAsBytes(awaitpdf.save());

好了,在木辛老师的讲义中,知识就是这么简单!通过这些简单有趣的知识,你就可以创造出很多功能强大的工具或者软件,还等什么,赶紧去干起来吧!

请大家关注木辛老师的课程哟,获取更多编程知识和编程技巧。接下来,木辛老师和大家一步一步地学习Flutter知识吧。

快乐编程,快乐成长!

咱们下节课再见,88~

#pgc-card.pgc-card-href{text-decoration:none;outline:none;display:block;width:100%;height:100%;}#pgc-card.pgc-card-href:hover{text-decoration:none;}/*pc样式*/.pgc-card{box-sizing:border-box;height:164px;border:1pxsolid#e8e8e8;position:relative;padding:20px94px12px180px;overflow:hidden;}.pgc-card::after{content:"";display:block;border-left:1pxsolid#e8e8e8;height:120px;position:absolute;right:76px;top:20px;}.pgc-cover{position:absolute;width:162px;height:162px;top:0;left:0;background-size:cover;}.pgc-content{overflow:hidden;position:relative;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);}.pgc-content-title{font-size:18px;color:#222;line-height:1;font-weight:bold;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.pgc-content-desc{font-size:14px;color:#444;overflow:hidden;text-overflow:ellipsis;padding-top:9px;overflow:hidden;line-height:1.2em;display:-webkit-inline-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}.pgc-content-price{font-size:22px;color:#f85959;padding-top:18px;line-height:1em;}.pgc-card-buy{width:75px;position:absolute;right:0;top:50px;color:#406599;font-size:14px;text-align:center;}.pgc-buy-text{padding-top:10px;}.pgc-icon-buy{height:23px;width:20px;display:inline-block;background:url(https://lf3-cdn-tos.bytescm.com/obj/cdn-static-resource/pgc/v2/pgc_tpl/static/image/commodity_buy_f2b4d1a.png);}Flutter实战¥74.3购买

好了,文章到此结束,希望可以帮助到大家。



本文由欣欣吧手游攻略栏目发布,感谢您对欣欣吧的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人站长或者朋友圈,但转载请说明文章出处“writeas上层玩具(下)

标签:
writeas三天三夜下
« 上一篇 2023-10-17