6

Rysuję wykres liniowy za pomocą CGContextRef. Czy mogę pomniejszyć ten wykres, aby wyraźnie pokazać linie.Jak powiększyć wykres utworzony za pomocą CGContextRef

Używam tego kodu.

CGContextRef context=UIGraphicsGetCurrentContext(); 
CGContextBeginPath(context); 

CGMutablePathRef path=CGPathCreateMutable(); 
CGPathMoveToPoint(path, NULL, lastPointX, lastPointY); 
CGPathAddLineToPoint(path, NULL, newPointX, newPointY); 

CGContextAddPath(context, path); 
CGContextSetLineWidth(context, lineWidth); 
CGContextSetStrokeColorWithColor(context, lineColor); 
CGContextStrokePath(context); 
CGPathRelease(path); 

if (isFilling) { 
    CGMutablePathRef path=CGPathCreateMutable(); 
    CGPathMoveToPoint(path, NULL, newPointX, newPointY); 
    CGPathAddLineToPoint(path, NULL, newPointX, self.bounds.size.height); 
    CGPathAddLineToPoint(path, NULL, lastPointX, self.bounds.size.height); 
    CGPathAddLineToPoint(path, NULL, lastPointX, lastPointY); 
    CGPathCloseSubpath(path); 

    CGContextAddPath(context, path); 
    CGContextSetFillColorWithColor(context, fillingColor); 
    CGContextFillPath(context); 
    CGPathRelease(path); 
} 

Uwaga: - Nie chcę powiększać widoku. Chcę ponownie rysować linie, aby wyraźnie pokazać.

Odpowiedz

0

Trzeba narysować ten wykres na UIScrollView lub można dodać widok na UIScrollView następnie można stanie powiększać i pomniejszać tego wykresu. Aby to zrobić, należy wdrożyć następujące metody UIScrollView:

- (UIView*)viewForZoomingInScrollView:(UIScrollView *)scrollView { 
} 
- (void)scrollViewDidZoom:(UIScrollView *)scrollView { 
} 

Dla porównania można śledzić ten miły samouczek:

http://www.raywenderlich.com/10518/how-to-use-uiscrollview-to-scroll-and-zoom-content

który powie Ci wdrożyć następujące metody:

- (void)centerContentsOfScrollView:(UIScrollView *)scrollView 
{ 
} 
- (void)scrollViewDoubleTapped:(UITapGestureRecognizer*)recognizer 
{ 
} 
- (void)scrollViewTwoFingerTapped:(UITapGestureRecognizer*)recognizer 
{ 
} 
+0

Nie chcę powiększać widoku. Chcę ponownie rysować linie, aby wyraźnie pokazać. –

Powiązane problemy