android爱奇艺轮播图,一个仿爱奇艺视频,腾讯视频,搜狐视频首页推荐位轮播图类库(示例代码)...

前言:本篇只是一个介绍这个一个类库,具体实现思路代码会下篇中进行分析出来,

如果觉得还行,欢迎点个star。

SuperIndicator

a superindicatorlibray for viewpager, banner

仿爱奇艺视频,腾讯视频,搜狐视频首页推荐位轮播图

专业轮播图库,没有之一

也可以应用于广告位banner

支持无限循环(4->5,5->1),可以自己设定点的样试

图片支持设置圆角边

只需要几行代码就能写了banner图

效果图

SuperIndicator.gif

SuperIndicator

爱奇艺视频,腾讯视频,搜狐视频首页推荐位轮播图

b55e8b6e176075a3f772b48c4fb6aedd.png

4de4a2e565bca8462af1c33b82cf9031.png

74931663e0ee6d44e36fcf8b792a0a29.png

Gradle

如果引用不到包,可以把library拷贝你的工程中,在setting.gradle中include下,也是一样。

dependencies {

compile ‘com.hejunlin.superindicatorlibray:superindicatorlibray:1.0.2‘

}

Usage

xml

android:id="@id/indicator"

android:layout_width="match_parent"

android:layout_height="48dp"

android:layout_gravity="right|center_vertical"

android:layout_marginRight="@dimen/dimen_14dp"

android:gravity="center"

android:orientation="horizontal" />

android:id="@+id/viewpager"

android:layout_width="match_parent"

android:layout_marginTop="@dimen/dimen_25dp"

android:layout_height="@dimen/dimen_400dp"/>

java

ViewPager viewpager = (ViewPager) view.findViewById(R.id.viewpager);

CircleIndicator indicator = (CircleIndicator) view.findViewById(R.id.indicator);

viewpager.setAdapter(mPageAdapter);

indicator.setViewPager(viewpager);

欢迎关注我的个人公众号,android 技术干货,问题深度总结,FrameWork源码解析,插件化研究,最新开源项目推荐

License

Copyright (C) 2016 hejunlin

Licensed under the Apache License, Version 2.0 (the "License");

you may not use this file except in compliance with the License.

You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software

distributed under the License is distributed on an "AS IS" BASIS,

WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

See the License for the specific language governing permissions and

limitations under the License.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以考虑使用Pillow类库,它是Python的一个图像处理库,支持中文绘制。具体实现可以使用PIL.ImageDraw对象的text()方法,设置文本的方向为垂直即可。以下是一个Python示例: ```python from PIL import Image, ImageDraw, ImageFont # 创建一个空白图像 img = Image.new('RGB', (200, 400), (255, 255, 255)) # 获取字体 font = ImageFont.truetype('path/to/font.ttf', size=20) # 创建ImageDraw对象 draw = ImageDraw.Draw(img) # 绘制中文 text = '你好\n世界' draw.text((10, 10), text, font=font, fill=(0, 0, 0), direction='ttb') # 保存图像 img.save('path/to/image.png') ``` 如果需要在Node.js中实现,可以使用canvas类库。以下是一个Node.js示例: ```javascript const { createCanvas, registerFont } = require('canvas'); // 创建画布 const canvas = createCanvas(200, 400); const ctx = canvas.getContext('2d'); // 加载字体 registerFont('path/to/font.ttf', { family: 'MyFont' }); // 设置字体 ctx.font = '20px MyFont'; // 设置文本方向为垂直 ctx.rotate(-Math.PI / 2); // 绘制中文 const text = '你好\n世界'; ctx.fillText(text, -390, 10); // 保存图像 const fs = require('fs'); const out = fs.createWriteStream('path/to/image.png'); const stream = canvas.createPNGStream(); stream.pipe(out); ``` 如果需要在Java中实现,可以使用Java 2D API。以下是一个Java示例: ```java import java.awt.Color; import java.awt.Font; import java.awt.Graphics2D; import java.awt.geom.AffineTransform; import java.awt.image.BufferedImage; import java.io.File; import javax.imageio.ImageIO; public class Main { public static void main(String[] args) throws Exception { // 创建图像 BufferedImage img = new BufferedImage(200, 400, BufferedImage.TYPE_INT_RGB); // 获取画笔 Graphics2D g = img.createGraphics(); // 设置背景色 g.setBackground(Color.WHITE); g.clearRect(0, 0, img.getWidth(), img.getHeight()); // 加载字体 Font font = Font.createFont(Font.TRUETYPE_FONT, new File("path/to/font.ttf")); font = font.deriveFont(20f); // 设置字体 g.setFont(font); // 设置文本方向为垂直 AffineTransform at = new AffineTransform(); at.rotate(-Math.PI / 2); g.setTransform(at); // 绘制中文 String text = "你好\n世界"; g.setColor(Color.BLACK); g.drawString(text, -390, 10); // 保存图像 ImageIO.write(img, "png", new File("path/to/image.png")); } } ``` 以上三个示例都可以实现在图像上竖排绘制中文的效果。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值