Hi,
I am trying to add an UIImage after moving its UIImageView to some position but I have a crash on a
and I think I am doing things wrong.
- (NSData *)vAddImage:(NSData *)data frame:(CGRect)frame path:(NSString *)path page:(int)p
{
struct PDFV_POS pos1;
struct PDFV_POS pos2;
m_cur_page = p;
[m_view vGetPos:&pos1 :(frame.origin.x - self.contentOffset.x) * m_scale :(frame.origin.y - self.contentOffset.y) * m_scale];
[m_view vGetPos:&pos2 :(frame.origin.x - self.contentOffset.x +frame.size.width) * m_scale :(frame.origin.y - self.contentOffset.y + frame.size.height) * m_scale];
_rect.left = pos1.x;
_rect.right = pos2.x;
_rect.top = pos1.y;
_rect.bottom = pos2.y;
NSString *tp = NSTemporaryDirectory();
tp = [tp stringByAppendingPathComponent:@"cache.dat"];
[m_doc setCache:tp];
PDFPage *page = [m_doc page:m_cur_page];
CGImageRef ref = [UIImage imageWithData:data].CGImage;
[page addAnnotBitmap:ref :YES :&_rect];
[m_view vRenderSync:m_cur_page];
[self refresh];
[m_doc save];
NSData *pdfData = [[NSFileManager defaultManager]contentsAtPath:path];
return pdfData;
}
where "Frame " is the frame of UIImageView after moving it.
Also I would like to know How to get the real coordinates according to the PDFView,I am doing something like when moving the UIIMageView in
PDFVPage *vpage = [m_view vGetPage:0];
[vpage GetWidth];
[vpage GetHeight];
[vpage GetVX:[m_view vGetX]];
[vpage GetVY:[m_view vGetY]];
float x =([vpage GetWidth] *(frame.origin.x *m_scale)/[vpage GetWidth])+self.contentOffset.x +50;
float y =([vpage GetHeight] *(frame.origin.y *m_scale)/[vpage GetHeight])+self.contentOffset.y +5;
I would appreciate any help.
Thank you