LoginSignup
2
5

More than 5 years have passed since last update.

9スライスをPythonでしてみる

Last updated at Posted at 2020-02-19

9スライスとは

図形を拡大・縮小するときに、角のスタイルが設定されたものは歪曲して表示されてしまいます。9スライスでは、図形を9つの領域に分けることで元の形を保ったまま拡大・縮小ができます。
9sliceDisc.png

事前準備

9スライスに対応した画像を生成します。Romannurikさんが公開しているAndroid Asset Studioを利用します。トップ画面から Simple nine-patch generator を選択し、下のような感じで画像をつくります。

スクリーンショット 2017-04-18 14.51.32.png

必要なライブラリのインストール

pillowとnine-patchを導入します

pip install pillow
pip install ninepatch

コード

上記で生成した9スライス画像を引数にしてNinepatchオブジェクトを生成します。render()メソッドで縦横のサイズを指定して画像を拡大します。

nineSliceTest.py
from ninepatch import Ninepatch
from PIL import Image
bubble = Ninepatch("bubble.9.png")
scaledBubble = bubble.render(600,200)
scaledBubble.show()

元画像
bubbleForBlog.png

結果画像
result.png

2
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
5