IOS图片上添加水印文字(微博上图片上得水印文字)

iOS 中 给图片添加水印 iOS 中 给图片添加水印。 阅读详情


建一个类目(不知道怎么建的可以去百度一下) UIImage的类目

类目的.h文件  文件名为UIImage+watermark

#import <UIKit/UIKit.h>


@interface UIImage (watermark)

//定义一个方法

- (UIImage *)watermarkImage:(NSString *)text;

@end


.m文件的实现

#import "UIImage+watermark.h"


@implementation UIImage (watermark)

- (UIImage *)watermarkImage:(NSString *)text{


    //1.获取上下文

    UIGraphicsBeginImageContext(self.size);

    

    //2.绘制图片

    [self drawInRect:CGRectMake(0, 0, self.size.width, self.size.height)];

    

    //3.绘制水印文字

    CGRect rect = CGRectMake(0, self.size.height-20, self.size.width, 20);

    

    NSMutableParagraphStyle *style = [[NSMutableParagraphStyle defaultParagraphStyle] mutableCopy];

    style.alignment = NSTextAlignmentCenter;

    //文字的属性

    NSDictionary *dic = @{

                          NSFontAttributeName:[UIFont systemFontOfSize:13],

                          NSParagraphStyleAttributeName:style,

                          NSForegroundColorAttributeName:[UIColor whiteColor]

                          };

    //将文字绘制上去

    [text drawInRect:rect withAttributes:dic];


    //4.获取绘制到得图片

    UIImage *watermarkImage = UIGraphicsGetImageFromCurrentImageContext();

    

    //5.结束图片的绘制

    UIGraphicsEndImageContext();

    

    return watermarkImage;

}

@end



然后再viewController 的视图上添加一个UIImageView 导入类目(UIImage+watermark)文件

#import "ViewController.h"

#import "UIImage+watermark.h"

@interface ViewController ()


@end


@implementation ViewController


- (void)viewDidLoad {

    [super viewDidLoad];


    

    UIImage *image = [UIImage imageNamed:@"baymax.jpg"];


//调用类目的方法实现功能

    UIImage *img = [image watermarkImage:@"@大白"];

    

    UIImageView *imageView = [[UIImageView alloc] initWithImage:img];

//    imageView.frame = self.view.bounds;

    

    [self.view addSubview:imageView];

}


- (void)didReceiveMemoryWarning {

    [super didReceiveMemoryWarning];

    // Dispose of any resources that can be recreated.

}


@end




【绘图案例-水印 Objective-C语言】 阅读详情

相关推荐

ios开发 图片添加水印(修复版) 透明水印 文字水印

ios开发,图片添加水印,可添加文字和图片。

iOS - 图片添加水印

图片添加水印简单的理解就是将图片和文字绘制在一张图片内。值得注意的是,图片大小各异,即使添加相同样式的水印,也会在查看图片的时候,使水印看起来大小不一。为了解决这个问题,需要把图片按屏幕宽度重绘,水印添加的位置也需要是相对重绘后的图片的位置。

chaneylauok的博客 476

ios开发UIImage category实现添加水印(图片和文字)

Uiimage+category,uiimage+watermark,uiimageview+category实现对于图片添加水印的功能

iOS开发-给图片添加水印

为了防止自己辛苦做的项目被别人盗走,采取把图片添加水印,在此表示图片的独一无二。加水印不是要在上面添加上几个Label,而是我们要把字画到图片上成为一个整体,下面这篇文章主要介绍IOS给图片添加水印,有需要的小伙伴可以来参考下 方法一:水印为文字 效果如图: #import "ViewController.h" @interface ViewController () @pr...

weixin_30673611的博客 298

Rstudio安装org.Hs.eg.db

自己也是个小白,初次安装org.Hs.eg.db碰到好多问题,步骤总结如下: 第一,instal.packages()安装,不行则换 BiocManager::install() 第二,如BiocManager不成,说明不是最新版本,可按提示安装最新版 BiocManager::install(version = '3.13') #由于R版本较新,按照提示中的相关信息,安装最新版本的 第三,再次安装 BiocManager::install("org.Hs.eg.db") 第四,之后每个人.

ZH_DDong的博客 2万+

Halcon —— 图像像素类型与转换

图像类型 就目前工业领域主流的图像处理工具halcon来讲,有以下几张图像类型:‘byte’, ‘complex’, ‘cyclic’, ‘direction’, ‘int1’, ‘int2’, ‘int4’, ‘int8’, ‘real’, ‘uint2’,具体含义如下图所示。相互间的转换可通过convert_image_type算子完成,但盲目转换会导致图像像素值异常。 ‘byte’ 每像素1字节,无符号 值范围: (0到255) ‘int1’ 每像素1字节,有符号 值范围: (-128到127) ‘

baidu_35536188的博客 1万+

iOS-给图片添加水印效果的方法

方法一:添加文字水印,这里说的文字水印是指将开发者定义的文字直接添加到图片上,代码如下: UIImage *img = [UIImage p_w_picpathNamed:@"3G_alert.png"]; //需要加水印的图片 CGSize size = self.view.frame.size; //设置上下文(画布)大小 UIGraphics...

weixin_33922672的博客 187

GBDT算法详解

本文详细介绍了GBDT算法的原理和特点,并展示了其在回归和分类任务中的应用。首先介绍了GBDT算法的基本思想和公式,然后展示了如何在回归数据集使用GBDT进行回归任务,以及如何在分类数据集上使用GBDT进行文本分类任务。

甜盐的博客 2540

iOS开发技巧之:图片加水印或文字

1.加文字 -(UIImage *)addText:(UIImage *)img text:(NSString *)text1 { //get image width and height int w = img.size.width; int h = img.size.height; CGColorSpaceRef colorSpace = CGColorSpa

vkooy的博客 735

阿里云天池大数据长期赛:金融风控-贷款违约预测(含代码)

本次比赛让自己在大数据的处理流程上有了更明确的认知,从数据清洗、特征工程、数据建模,每一个过程都能学到很多经验和知识,值得去历练。

weixin_46685991的博客 1万+

BUCK-BOOST升降压电路Multisim电路仿真分析

本文分析了三极管型BUCK-BOOST升降压开关电源的工作原理。该电路结合了BUCK降压和BOOST升压拓扑,通过控制三极管Q1的高频通断,使电感L1周期性储能和释能,实现输出电压可高于或低于输入电压且极性相反。详细阐述了Q1导通和关断阶段的工作过程,推导了输出电压与占空比的关系式Vo=-D/(1-D)*Vi,并分析了不同占空比下的工作模式(降压、升压)。通过Multisim仿真验证了理论分析,当D=25%时输出降压至1.6V,D=60%时输出升压至7.5V。电路具有升降压灵活、极性反转、效率高等特点,适用

XU157303764的博客 1436

iOS 图片加水印

原文地址:iOS 图片加标签

王颜华的博客 707

Buck电源设计常见的一些问题(五)MOS管振荡抑制方法(三)

关于开关节点振荡的产生机制和抑制问题,总结了三种抑制方法。第一种方法是利用输入端的高频去耦电容;第二种方法是设计 RC 缓冲电路;第三种方法是优化自举电路的串联电阻。以上三种方法均通过实验加以验证,对开关节点振荡具有很好的抑制作用。应该综合同步 Buck 变换器的各项指标权衡设计。

小幽余生不加糖 1634

iOS中制作一张水印图片

如果这篇文章帮助到了您,希望您能点击一下喜欢或者评论,你们的支持是我前进的强大动力.谢谢! 我们在很多APP中都会看到水印图片,例如下面微博中的一张图片 下面就来分享一下怎么制作一张水印图片吧 首先生成水印图片它最终是生成了一个新的图片,生成图片要用到了位图上下文,但是位图上下文需要我们手动创建。 实现水印效果的思路: 1.开启一个和原始图片一

wkl1992的博客 1048

【Proteus仿真】51单片机+DAC0832+数码管制作0-25V电压可调

【Proteus仿真】51单片机+DAC0832+数码管制作0-25V电压可调

perseverance51博客 2118

量化交易 米筐 案例:市值因子选股策略

案例:市值因子的选股策略 1.结果 获得超额收益 年化 49% 2. 从股票中选择市值小的股票 选定财务数据筛选 进行每日调仓(多因子选股调仓 周期频率会小一些) 3. 代码 估值有关指标 # 在沪深300股票中,选出市值比较小的10只股票 # 在这个方法中编写任何的初始化逻辑。context对象将会在你的算法策略的任何方法之间做传递。 def init(context): # 沪深300组合 stocks = index_components('000300.XSHG') # 沪深3

廷益_飞鸟的博客 2313

添加图片水印

一、水印的概念和作用 1> 水印的概念: 在图片上加的半透明logo、文字、图标。 2> 水印的作用: a. 可以展示图片的出处; b. 一些网站为了版权问题、广告而添加; c. 有时候,在手机客户端app中也需要用到水印技术。比如微博用户拍完照片后,可以在照片上打个水印,标识这个图片是属于谁的。 二、水印的实现方式和核心代码 1> 水印的实现方式: 利用Quartz2D,将

HenryZhang的博客 506

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

QToolButton设置图片填充满_如何防止自己的图片被盗用?这 4 招教你优雅加水印...

出门旅游一趟,好不容易拍到一组相当满意的图片。想要把这些图片上传到社交平台,如何才能让大家一看就知道这是自己拍的作品,同时又防止盗图呢?答案是在图片上加上自己的水印,这次有用功将和大家分享下,如何快捷、优雅地为自己的图片添加水印。如何制作水印自己制作水印主要有三个段位: 直接输入文字把手写名字做成水印制作图形作为水印美图秀秀、黄油相机等不少图片编辑软件都可以为图片添加文字。以黄油相机为例,输入文字...

weixin_39788256的博客 652

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

如何用手机打开dcm格式图片_如何防止自己的图片被盗用?这 4 招教你优雅加水印...

出门旅游一趟,好不容易拍到一组相当满意的图片。想要把这些图片上传到社交平台,如何才能让大家一看就知道这是自己拍的作品,同时又防止盗图呢?答案是在图片上加上自己的水印,这次有用功将和大家分享下,如何快捷、优雅地为自己的图片添加水印。如何制作水印自己制作水印主要有三个段位: 直接输入文字把手写名字做成水印制作图形作为水印美图秀秀、黄油相机等不少图片编辑软件都可以为图片添加文字。以黄油相机为例,输入文字...

weixin_29370183的博客 1365

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

2026微博图片去水印工具教程:免费在线电脑手机通用方法

2026年主流的微博图片去水印方式分为官方无损原图保存、免费在线工具解析、轻量小程序处理、专业软件精修四大类,涵盖电脑、手机全设备使用场景。本文结合实测体验,整理出。

GYRYIJF的博客 203

java office文件加水印_如何防止自己的图片被盗用?这 4 招教你优雅加水印

出门旅游一趟,好不容易拍到一组相当满意的图片。想要把这些图片上传到社交平台,如何才能让大家一看就知道这是自己拍的作品,同时又防止盗图呢?答案是在图片上加上自己的水印,这次有用功将和大家分享下,如何快捷、优雅地为自己的图片添加水印。懒人目录如何制作水印如何随时随地导入水印如何批量添加水印如何设置批量添加水印的 iPhone 快捷指令如何制作水印自己制作水印主要有三个段位:直接输入文字把手...

weixin_30227775的博客 338

2026微博图片去水印软件推荐,手机电脑免费工具与在线方法

2026年市面上各类微博去水印工具繁杂,部分软件存在广告弹窗、画质压缩、操作繁琐、隐私泄露等问题,很多用户难以筛选出适配手机、电脑不同设备,且体验流畅的工具。本文内容完全聚焦个人合规使用场景,所有工具测评基于2026年7月最新实测,摒弃老旧失效方法,兼顾新手友好度和处理效果,覆盖移动端、电脑端、在线网页三大使用场景,满足不同用户的日常素材整理需求。

GYRYIJF的博客 33

2026微博图片去水印工具推荐,免费在线与手机APP教程

结合不同使用场景、设备需求,为大家梳理清晰的工具选择逻辑:追求极致便捷、零基础快速出图,优先选择耶斯去水印小程序,免安装、无登录、高清无损解析,适配绝大多数日常自用场景;临时少量处理、不想安装任何软件,选择Cleanup Pictures、Inpaint等免费在线工具;长期手机自用、需要本地图片补救修复,美图秀秀、剪映等手机APP足够满足基础需求;电脑端高清精修、复杂水印处理,可使用HitPawRemover专业工具。所有工具均聚焦免费微博图片去水印在线工具、手机APP版权合规声明。

GYRYIJF的博客 82

html怎么让图片重叠_图片如何去水印,分享5个小妙招,手把手教会你!

这是神助攻发布的第59篇原创文章大家好,我是助攻姐的好朋友美文~作为一个经常逛微博下载表情包、头像的人,遇到的一个大难题就是图片有水印。如何才能快速去除水印?询问了一圈身边朋友,搜集了各种资料,我整理了 5 个超好用的方法。开始今天的教程之前需要事先声明一下:一般带水印的图片都是有版权的,仅供大家个人学习、练习使用,如果涉及到商用,请前往图库或者联系图片版权所有者购买。01懒人去水...

weixin_39955732的博客 1100

2026免费图片去水印工具推荐:在线电脑手机全覆盖,无广告免费图片去水印网站、安卓iOS手机免费去水印APP合集

本篇 2026 实测整理的免费图片去水印工具合集,整合在线网页工具、电脑本地软件、安卓 iOS 手机 APP、微信小程序四大类方案,完整覆盖「免费图片去水印工具推荐 在线 电脑手机」「无广告免费图片去水印网站」「手机免费去水印 APP 安卓 iOS」三类高频搜索需求,所有工具均可免费使用,适配不同使用场景,新手也能快速上手操作。

GYRYIJF的博客 61

2026图片去水印工具推荐!免费图片去水印工具实测好用

在日常收集素材、整理图片资料、保存生活美图的过程中,绝大多数网络图片、平台截图都会自带水印、角标、文字logo等遮挡元素,不仅影响画面整洁度,还会降低图片的使用质感。基于2026年最新使用体验,本篇为大家整理优质清单,聚焦本次推荐的所有工具均经过实测筛选,摒弃了收费套路、强制注册、画质严重压缩、广告弹窗频发的劣质工具,全部主打免费可用、操作轻量化、修复效果自然,同时区分了低频随手使用、批量素材处理、复杂水印修复、专业精细修图等不同场景,大家可以根据自身需求精准选择,无需盲目尝试各类工具浪费时间。

GYRYIJF的博客 38
上一篇: IOS加载网络图片的框架(共有4中方法)
下一篇: 队列、堆、栈、堆栈的区别?
CyanColor
博客等级 码龄12年 7粉丝 5原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值