Swift転職なら=>【LevTech】
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大

頭痛が減ったので共有です!

rebuild.fmを応援しています!

HOME > CoreTextでTextViewの一文字の向きを変える

CoreTextでTextViewの一文字の向きを変える(解決前)

TextViewの文字を縦書きにしたいなぁと考えている時にCoreTextとNSMutableAttributedStringの二つのどちらかなら実装できそう。CoreTextを利用してトライして無理ならAttributedStringをトライしてみます。

サンプル画像

参考:is it possible to rotate the character using NSAttributedString
参考:How to manipulate individual character of UITextView in ios?
参考:CoreTextを調べてみた
参考:Core Text
参考:Change font of individual words in UITextView in Interface Builder
参考:NSAffineTransformのメモ

やってみた

やれませんでした、、、、


- (void)drawRect:(NSRect)rect
{
    NSAttributedString * myString = [[NSAttributedString alloc] initWithPath:mypath documentAttributes:NULL];
    NSAffineTransform* xform = [NSAffineTransform transform];
    [myString drawAtPoint:NSMakePoint(10,10)];
    [xform rotateByDegrees:-90.0];
    [xform concat];
    [myString drawAtPoint:NSMakePoint(-150,0)];
    [xform invert];
    [xform concat];
    [myString drawAtPoint:NSMakePoint(15,15)];
    [myString release];
}

UITextViewを継承したdrawRectの上のコードをSwiftに書き換えたかったのですがNSAffineTransformの宣言でエラー。 あれ、、、use of undefined type 'NSAffineTransform'。DocumentもあるのでSwiftだけできないわけではないはずなので、 調査。。。


import UIKit
import Foundation

public class myTextView: UITextView {
    
    required public init(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
    }
    
    override init(frame: CGRect, textContainer: NSTextContainer?) {
        super.init(frame: frame, textContainer: textContainer);
    }
    
    public override func drawRect(rect: CGRect) {
        var transform :NSAffineTransform;
    }
}

サンプル画像

参考:Maxxxro/Maxxxro/DemoView.swift
参考:Foundation Framework Reference NSAffineTransform Class Reference

URL先をみていると、import foundationすれば使える感じなんだけど、、、

まとめ

現状できていないので、継続して進めてまいります!

次の記事はこちらです!(まだ正しい解決ではないですが、、、)

↓こんな記事もありますよ!

アプリから電話をかける

Objective-Cではサンプルがありましたが日本語では無かったので共有です!

SqliteのDBファイル保存+レビュー却下

2回既にレビューを通過していたアプリが、バイナリレビューで却下されてしまいました。理由は、2.23 Details On launch and content download, your app stores 26.48MB on the user's iCloud, which does not comply with the iOS Data Storage となっていてiCouldに保存される量にしては多いから管理してください、といった旨の内容でした。別に却下理由に難癖つけるつもりではないのですが、最初のレビュー時にいってほしい。。。

UIImage

中年サラリーマンが画像をローカルやURLやあんな所からアクセスして表示するサンプルを説明しております。
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!