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すれば使える感じなんだけど、、、

まとめ

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

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

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

Facebook SDKを試してみる#3(再調査)

SDKのインストーラが起動しても結局frameworkをドラッグドロップしなちゃ追加できない、面倒臭い、と発言してしまったのですが、 どうやらSDKをインストーラにてインストールした場合(SDK4.1)は、importするだけでどうやらSDKが追加できるとかなんとか。

NSURLSessionでバックグラウンドで通信処理

NSURLConnectionの進化版のような立ち位置に私は感じております。アプリがバックグラウンドになっても通信処理を続けてくれる優れものです。 以前まではどうやら音声や位置情報だけに限られていましたが、このクラスによって大きなデータをユーザに気持ちよくDLしてもらうことも可能にです。

UITabBarController

スマホ画面下にタブが出てきて画面を切り替えできるUITabBarViewControllerクラスです。UITabBarItemの記事を追加しましたがUITabbarの記事がなかったので追加しました。(※目のチカチカにご注意ください。)
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!