try! Swift NYC 2016 - Mastering TextKit

こんにちは、技術部モバイル基盤グループのヴァンサン(@vincentisambart)です。 この間、クックパッドの iOS アプリの開発で Core Text と色々遊んだので、今日は Core Text の話をしましょう。 課題は表示する文字の一部の裏に角丸長方形を表示することです。例えばクックパッド iOS アプリに表示されているリンクを長く押すと表示されている角丸長方形です。以下の画像は「落し蓋」に表示されるタッチフィードバックが見えます。区域を計算したら、その後タップ区域のためにも使えますしね。 以下に説明するやり方はクックパッド iOS アプリのやり方を簡略化したものです。(クックパッド iOS アプリは実装時にまだ Swift を使い始めていなかったので Objective-C ですけども) Swift Playground (Swift 2.2) で開発しましょう。コードは
kishikawakatsumi/SECoreTextView · GitHub iOS/Macの両方で使えて、文字の選択やリンクのクリックに対応したテキストビューをテスト公開しました。 - 24/7 twenty-four seven 前に書いたSECoreTextViewに編集機能を実装しました (iOSのみ)。 SECoreTextViewはCoreTextを使って簡単にクリッカブルなリンクや画像付きのリッチテキストを表示できるテキストビューの代替実装としてのライブラリです。 以前のものはそこそこ簡単に豊かな表現ができるのでこれはこれでけっこう実用的だったと思います。 ↓ このように画像を含めたテキストを表示したり、リンクはクリックに反応して任意の処理をすることができます。 画像に限らず、画面に表示できるものはボタンでもその他のビューでもブロックを渡して任意の描画をすることも可能です
Live Nation says its Ticketmaster subsidiary was hacked. A hacker claims to be selling 560 million customer records. An autonomous pod. A solid-state battery-powered sports car. An electric pickup truck. A convertible grand tourer EV with up to 600 miles of range. A “fully connected mobility device” for young urban innovators to be built by Foxconn and priced under $30,000. The next Popemobile. Ov
前提知識 本投稿ではCoreTextの描画については記載してません。 基礎的な描画についてはgithubの0. 最小限の描画などを参考にして下さい。 また別途、 欧文書体の基礎知識 CoreTextの日本語行間の問題(解決) もお読み下さい。 本題 ヒラギノフォントを使用した場合にでも正確に描画に必要なサイズを取得する方法です。 CoreTextでサイズを取得する場合は以下になります。 /* サイズを取得 */ // 属性 NSDictionary *attrDict = [NSDictionary dictionaryWithObjectsAndKeys: (__bridge id)self.ctFont, kCTFontAttributeName, (__bridge id)self.ctParagraphStyle, kCTParagraphStyleAttributeName, n
CoreTextを使った縦書きの情報が少なかったので、自分なりに調べ試した結果物としてgithubに公開しました。 hokuron/CTRVerticalTextView – github 一応MITライセンスで公開していますが使い物になるかどうか…ww TextViewとなっていますが、UIViewのサブクラスです。 また、この CTRVerticalTextViewはiOS 6ではきちんと動くはずですが、iOS 5ではランドスケープ時に幅と高さが入れ替わらないバグがあります。なのでPull req大歓迎です! 以下にてCoreTextで縦書きをする基本的な方法を… まず、CoreTextを作る順序は CFAttributedString -> CTFramesetter + CGPath -> CTFrame となります。 では、最初のCFAttributedStringを作って
こんにちは、開発担当の眞弓です。 テキストを表示するとき、通常は UILabel などを使いますがときどき「凝った文字列を使いたい」ということはないでしょうか? そんなときのために、今回は Core Text の基本的な使い方について書いてみようと思います。 人によってやり方は違うと思いますが、ちょっとしたことに使う場合に私がやっててわかりやすかった方法を紹介します。 位置を指定するやりかたはイメージしにくいので、文字列単位で扱えるやり方で実装をしてみました。 以下のような感じで、「属性付き文字列を作って、その文字列を付け足していって、最後にまとめて表示」というやり方です。 1 : 文字列を作成 2 : フレームを作成 3 : DrawRect 1 : 文字列を作成 属性付き文字列は以下のような感じで作っていきます。 atrString = [[NSMutableAttributedStr
One of the most promising and mysterious new frameworks introduced in iOS 3.2 is Core Text. Apple defines Core Text as a “text drawing engine”, which allows Mac (and now iPad) apps to render rich text on any graphics context. Strings drawn with Core Text feature lots of custom settings such as detailed font information, columns, variable line and paragraph heights and several different attributes,
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く