問題タブ [textkit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - TextKit は、広い除外パスの後にテキストをレイアウトしません
objc.io #5 http://www.objc.io/issue-5/getting-to-know-textkit.htmlから TextKit サンプル プロジェクトを取得し、Text Interaction Demo の除外パスの幅と形式を変更しました。除外パスの幅をコンテナーの幅より大きくしました。また、テキストの途中にテキストを配置すると、除外パスの後にテキストがレイアウトされないことがわかりました。それを修正する方法はありますか?除外パスの下のテキストを表示したい。新しいテキスト コンテナーを追加すると、選択動作が失われます。
ios - UITableView の行の高さをユーザーの好みのテキスト サイズ (動的タイプ) に対応させるにはどうすればよいですか?
UITableView
の行の高さを、ユーザーの好みのテキスト サイズの変更に対応させたいと考えています。たとえば、好みのテキスト サイズが大きくなった場合、それに比例して行の高さを大きくしたいと考えています。これが私がこれまでに持っているものです:
では、ユーザーの好みのテキスト サイズを反映する行の高さを計算する最良の方法は何でしょうか?
ios - iOS7 または TextKit で scrollRangeToVisible の代わりに使用するもの
以前のバージョンの iOS では、以下UITextView
を使用して一番下までスクロールします。
また
しかし、前者には、長いテキストの上部から開始し、テキストをビューに追加するたびにスクロールを下部にアニメーション化するという奇妙な効果があります。テキストを追加するときにテキストの一番下にポップダウンする方法はありますか?
ios - iOS NSAttributedString から HTML へ
にNSAttributed
設定した (HTML からの) 文字列がありますUITextView
。
次に、ユーザーが必要なものを編集できるようにし、それを再度 HTML に変換したいので、次を使用します。
HTMLを返しますが、それは私が望む方法ではありません。すべてに class 属性が与えられ、CSS がドキュメントの上部に配置されます。画像やリンクなどは、返される HTML には含まれておらず、おそらくさらに多くの問題が含まれています。
から HTML を取得するより良い方法はありNSAttributedString
ますか? または、を解析しNSAttributedString
て独自の HTML を作成する方法はありますか?
ios - NSLayoutManager の描画をアニメーション化する
NSLayoutManager
次のコードを使用してテキストを描画している があります。
私の見解では-drawRect:
。これは素晴らしく機能しますが、私が実際にできるようにしたいのは、入力されているかのように、テキストを文字ごとにアニメーション化することです。
「可視文字列」変数に文字を追加してから を呼び出そうとしました-[self setNeedsDisplay]
が、約 20 文字を超えるテキストを処理すると、毎回すべてのテキストが再描画されるため、遅れが生じ始めます。
回帰: をアニメートするにはどうすればよいNSLayoutManager
です-drawGlyphsForGlyphRange:atPoint:
か?
ios - NSTextStorage サブクラスの viewController の layoutManager を設定するときの無効なグリフ インデックス
私の目標は、TextKit を使用して、特定の単語の斜体化、テキスト サイズの設定などを行うことです。
まず、テキスト文字列内の文字を強調表示しようとしています。私は TextKit (そして正直なところプログラミング全般) に慣れていないので、obc.io issue #5 の構文強調トピックに従っています。
作成した UITextView に組み込まれている NSLayoutManager を使用すると、例外がスローされずにテキストが画面に表示されます。UITextView をビュー コントローラー (下記) の NSTextStorage サブクラスのレイアウト マネージャーとして設定すると、無効なグリフ インデックスの例外のエラーが発生します。
コンソール出力は次のとおりです。
Apple のテキスト プログラミング ガイドを何度も読み、テキスト システムがどのように確立されているかを理解していると思いますが、グリフ数がグリフ数を超える理由がわかりません...
viewController と NSTextStorage サブクラスの gist をそれぞれhereとhereに作成しました。
ios - 連結された NSAttributedString が正しいフォーマットでレンダリングされない
NSAttributedString
次のように TextKit を使用して、正しくレンダリングされる属性で既にフォーマットされているテキストのチャンクを複数列の複数ページのフォーマットにレンダリングします。
NSAttributedString
ただし、これを行う前に、次のように、既存の(self.attrString
この例では)属性付きの文字列を 2 つ追加する必要があります。
結果の属性付き文字列の内容を確認すると、次のようになります。
Moby Dick {NSFont = " font-family: \"ジョージア\"; font-weight: normal; font-style: normal; font-size: 28.00pt";}Herman Melville{NSFont = " font-family: \"ジョージア\"; font-weight: normal; font-style: normal; font-size: 12.00pt"; } Lorem ipsum dolor et { NSColor = "UIDeviceWhiteColorSpace 0 1"; NSFont = " font-family: \"Times New Roman\"; font-weight: normal; font-style: normal; font-size: 12.00pt"; NSParagraphStyle = "配置 4、LineSpacing 0、ParagraphSpacing 12、ParagraphSpacingBefore 0、HeadIndent 0、TailIndent 0、FirstLineHeadIndent 0、LineHeight 0/0、LineHeightMultiple 0、LineBreakMode 0、タブ (\n 28L、\n 56L、\n 84L、\ 112L、\n
140L、\n 168L、\n 196L、\n 224L、\n 252L、\n 280L、\n
308L、\n 336L\n)、DefaultTabInterval 36、ブロック (null)、リスト (null)、BaseWritingDirection -1、HyphenationFactor 0、TighteningFactor 0、HeaderLevel 0"; }more lorem ipsum など...
つまり、属性が正しく追加されたように見えます。ただし、これを TextKit を使用してレンダリングすると (コードの最初のチャンクを参照)、マージされたテキスト コンポーネント (この例ではタイトルと作成者) のテキスト サイズと異なるフォントがそのままレンダリングされず、単に同じ基本が割り当てられます。次のテキストとして属性。
TextKit を使用する代わりに、単一の UITextView を作成し、NSAttributedString
そのビューに直接レンダリングする場合 (つまりNSLayoutManager
、 などを使用しない場合)、挿入された属性付き文字列のフォントとサイズの違いは正しくレンダリングされます。
私の質問: TextKit を使用すると、追加されたテキストが正しくレンダリングされないのはなぜですか? 複数列と除外パスをサポートするには、TextKit を使用する必要があります。
ios - 属性付きテキストが TableView セルで機能しない
TabelViewCell で別のフォントとフォント サイズを使用しようとしていますが、機能していません。
これが私が試したものです:
このコードはアプリをクラッシュさせます
それから私はこれを試しました:
これですべてが機能しますが、フォントとフォント サイズは変わりません。
ここに私のアプリからのいくつかのコードがあります: