Skip to content

Commit

Permalink
Added framewidth constructor to UIKatexView.
Browse files Browse the repository at this point in the history
  • Loading branch information
Ian Arawjo committed Oct 13, 2014
1 parent 8e52603 commit 8540eb6
Show file tree
Hide file tree
Showing 5 changed files with 19 additions and 5 deletions.
2 changes: 1 addition & 1 deletion README.md
Expand Up @@ -15,7 +15,7 @@ A UIView that renders TeX expressions with KaTeX.
Initialize using [UIKatexView katexView:tex center:cgpoint]. TeX expressions can be either:
- Pure expression (no $ signs!)
- Mixture of expression and text (HTML). Wrap a math expression in $ signs.
* You can also set a custom delimiter in place of the $ sign, using katexView:center:delimiter:.
* You can also set a custom delimiter in place of the $ sign, using katexView:center:delimiter:. Check the other constructors in UIKatexView.h for more details.


**Example text (NSStrings):**
Expand Down
4 changes: 3 additions & 1 deletion UIKatexView.h
Expand Up @@ -15,7 +15,9 @@
// * can set the frame at initialization. */
+(instancetype)katexView:(NSString*)tex center:(CGPoint)center;

/** Constructor for custom settings. Default delimiter = $. */
/** Constructors for custom settings. Default delimiter = $, width = 200. */
+(instancetype)katexView:(NSString*)tex center:(CGPoint)center delimiter:(NSString*)delim;
+(instancetype)katexView:(NSString*)tex center:(CGPoint)center delimiter:(NSString*)delim framewidth:(float)width;
+(instancetype)katexView:(NSString*)tex center:(CGPoint)center framewidth:(float)width;

@end
18 changes: 15 additions & 3 deletions UIKatexView.m
Expand Up @@ -8,28 +8,40 @@

#import "UIKatexView.h"
#define DEFAULT_DELIMITER @"$"
#define DEFAULT_FRAMEWIDTH 200

@implementation UIKatexView {
UIWebView * _katexWebView;
CGPoint _storedCenter;

NSString * _delimiter;
float _framewidth;
}

// * Use this instead of initWithFrame! *
+(instancetype)katexView:(NSString*)tex center:(CGPoint)center {
return [self katexView:tex center:center delimiter:DEFAULT_DELIMITER];
return [self katexView:tex center:center delimiter:DEFAULT_DELIMITER framewidth:DEFAULT_FRAMEWIDTH];
}
+(instancetype)katexView:(NSString*)tex center:(CGPoint)center delimiter:(NSString*)delim {
+(instancetype)katexView:(NSString*)tex center:(CGPoint)center framewidth:(float)width {
return [self katexView:tex center:center delimiter:DEFAULT_DELIMITER framewidth:width];
}
+(instancetype)katexView:(NSString*)tex center:(CGPoint)center delimiter:(NSString *)delim {
return [self katexView:tex center:center delimiter:delim framewidth:DEFAULT_FRAMEWIDTH];
}
+(instancetype)katexView:(NSString*)tex center:(CGPoint)center delimiter:(NSString*)delim framewidth:(float)width {
UIKatexView * k = [[UIKatexView alloc] initWithFrame:CGRectZero];
[k setCenter:center];
[k setDelimiter:delim];
[k setFrameWidth:width];
[k loadKatex:tex];
return k;
}
-(void)setDelimiter:(NSString*)delim {
_delimiter = delim;
}
-(void)setFrameWidth:(float)w {
_framewidth = w;
}
-(void)setCenter:(CGPoint)center {
[super setCenter:center];
_storedCenter = center;
Expand All @@ -43,7 +55,7 @@ -(void)webViewDidFinishLoad:(UIWebView *)aWebView {
aWebView.scrollView.scrollEnabled = NO; // Property available in iOS 5.0 and later
CGRect frame = aWebView.frame;

frame.size.width = 200; // Your desired width here.
frame.size.width = _framewidth; // Your desired width here.
frame.size.height = 1; // Set the height to a small one.

frame.origin.y = 0;
Expand Down
Binary file modified example/KaTeX-Example/.DS_Store
Binary file not shown.
Binary file not shown.

0 comments on commit 8540eb6

Please sign in to comment.