PDF-Haru

 view release on metacpan or  search on metacpan

Haru.xs  view on Meta::CPAN

typedef HPDF_Font	PDF__Haru__Font;
typedef HPDF_ExtGState PDF__Haru__ExtGState;
typedef HPDF_Encoder	PDF__Haru__Encoder;
typedef HPDF_Outline	PDF__Haru__Outline;
typedef HPDF_Image	PDF__Haru__Image;
typedef HPDF_Destination	PDF__Haru__Destination;
typedef HPDF_Annotation	PDF__Haru__Annotation;

MODULE = PDF::Haru		PACKAGE = PDF::Haru		

PROTOTYPES: DISABLE

PDF::Haru
New()
	CODE:
	RETVAL = HPDF_New(error_handler,NULL);
	OUTPUT:
	RETVAL

void
Free(pdf)
	PDF::Haru pdf
	CODE:
	HPDF_Free(pdf);

HPDF_STATUS
NewDoc  (pdf)
	PDF::Haru  pdf
	CODE:
	RETVAL = HPDF_NewDoc(pdf);
	OUTPUT:
	RETVAL	

void
FreeDoc  (pdf)
	PDF::Haru pdf
	CODE:
	HPDF_FreeDoc  (pdf);
	
void
FreeDocAll  (pdf)
	PDF::Haru pdf
	CODE:
	HPDF_FreeDocAll  (pdf);
	
HPDF_STATUS
SaveToFile(pdf,filename)
	PDF::Haru pdf
	char* filename	
	CODE:
	RETVAL = HPDF_SaveToFile(pdf,filename);
    OUTPUT:
    RETVAL
	
void
SaveAsString(pdf)
	PDF::Haru pdf
	PREINIT:
	unsigned char * buf;
	unsigned int siz;
	PPCODE:
	HPDF_SaveToStream (pdf);
	HPDF_ResetStream (pdf);
	siz = HPDF_GetStreamSize  (pdf);
	buf = (unsigned char*)malloc(siz);
	HPDF_ReadFromStream (pdf, buf, &siz);
	XPUSHs(sv_2mortal(newSVpvn((const char*)buf,siz)));
	free(buf);
	
HPDF_STATUS
SetPagesConfiguration  (pdf, page_per_pages)
	PDF::Haru    pdf
	HPDF_UINT   page_per_pages
	CODE:
	RETVAL = HPDF_SetPagesConfiguration  (pdf, page_per_pages);
	OUTPUT:
	RETVAL	

HPDF_STATUS
SetPageLayout (pdf, layout)
	PDF::Haru pdf
	HPDF_PageLayout layout
	CODE:
	RETVAL = HPDF_SetPageLayout(pdf,layout);
	OUTPUT:
	RETVAL	

HPDF_PageLayout
GetPageLayout  (pdf);
	PDF::Haru   pdf
	CODE:
	RETVAL = HPDF_GetPageLayout(pdf);
	OUTPUT:
	RETVAL	
	
HPDF_STATUS
SetPageMode  (pdf, mode)
	PDF::Haru pdf
	HPDF_PageMode mode
	CODE:
	RETVAL = HPDF_SetPageMode  (pdf, mode);   
	OUTPUT:
	RETVAL	

HPDF_PageMode
GetPageMode  (pdf);
	PDF::Haru   pdf
	CODE:
	RETVAL = HPDF_GetPageMode(pdf);
	OUTPUT:
	RETVAL	

HPDF_STATUS
SetOpenAction  (pdf, open_action);
	PDF::Haru           pdf
	PDF::Haru::Destination   open_action
	CODE:
	RETVAL = HPDF_SetOpenAction  (pdf, open_action);
	OUTPUT:
	RETVAL	

Haru.xs  view on Meta::CPAN

	rect.left = left;
	rect.bottom = bottom;
	rect.right = right;
	rect.top = top;
	RETVAL = HPDF_Page_CreateLinkAnnot  (page,rect,dst);
	OUTPUT:
	RETVAL

PDF::Haru::Annotation
CreateURILinkAnnot (page,uri,left,bottom,right,top);
	PDF::Haru::Page       page
	const char   *uri
	float left
	float bottom
	float right
	float top
	PREINIT:
	HPDF_Rect       rect;
	CODE:
	rect.left = left;
	rect.bottom = bottom;
	rect.right = right;
	rect.top = top;
	RETVAL = HPDF_Page_CreateURILinkAnnot  (page,rect,uri);
	OUTPUT:
	RETVAL

HPDF_REAL
TextWidth  (page, text)
	PDF::Haru::Page    page
	const char  *text
	CODE:
	RETVAL = HPDF_Page_TextWidth  (page, text);
	OUTPUT:
	RETVAL

HPDF_UINT
MeasureText  (page, text, width, wordwrap)
	PDF::Haru::Page    page
	const char  *text
	HPDF_REAL    width
	int    wordwrap
	CODE:
	RETVAL = HPDF_Page_MeasureText  (page, text, width, wordwrap,NULL);
	OUTPUT:
	RETVAL

unsigned short
GetGMode (page)
	PDF::Haru::Page page
	CODE:
	RETVAL = HPDF_Page_GetGMode  (page);
	OUTPUT:
	RETVAL
	
void
GetCurrentPos  (page)
	PDF::Haru::Page   page
	PREINIT:
	HPDF_Point point;
	PPCODE:
	point = HPDF_Page_GetCurrentPos  (page);
	XPUSHs(sv_2mortal(newSVnv(point.x)));
	XPUSHs(sv_2mortal(newSVnv(point.y)));

void
GetCurrentTextPos  (page)
	PDF::Haru::Page   page
	PREINIT:
	HPDF_Point point;
	PPCODE:
	point = HPDF_Page_GetCurrentTextPos  (page);
	XPUSHs(sv_2mortal(newSVnv(point.x)));
	XPUSHs(sv_2mortal(newSVnv(point.y)));

PDF::Haru::Font
GetCurrentFont  (page)
	PDF::Haru::Page   page
	CODE:
	RETVAL = HPDF_Page_GetCurrentFont  (page);
	OUTPUT:
	RETVAL

HPDF_REAL
GetCurrentFontSize  (page)
	PDF::Haru::Page   page
	CODE:
	RETVAL = HPDF_Page_GetCurrentFontSize  (page);
	OUTPUT:
	RETVAL

void 
GetTransMatrix (page)
	PDF::Haru::Page   page
	PREINIT:
	HPDF_TransMatrix matrix;
	PPCODE:
	matrix = HPDF_Page_GetTransMatrix  (page);
	XPUSHs(sv_2mortal(newSVnv(matrix.a)));
	XPUSHs(sv_2mortal(newSVnv(matrix.b)));	
	XPUSHs(sv_2mortal(newSVnv(matrix.c)));
	XPUSHs(sv_2mortal(newSVnv(matrix.d)));	
	XPUSHs(sv_2mortal(newSVnv(matrix.x)));
	XPUSHs(sv_2mortal(newSVnv(matrix.y)));	

float
GetLineWidth (page)
	PDF::Haru::Page  page
	CODE:
	RETVAL = HPDF_Page_GetLineWidth  (page);
	OUTPUT:
	RETVAL

HPDF_LineCap
GetLineCap  (page)
	PDF::Haru::Page  page
	CODE:
	RETVAL = HPDF_Page_GetLineCap  (page);
	OUTPUT:
	RETVAL

HPDF_LineJoin
GetLineJoin  (page)
	PDF::Haru::Page  page
	CODE:
	RETVAL = HPDF_Page_GetLineJoin  (page);
	OUTPUT:
	RETVAL

float
GetMiterLimit (page)
	PDF::Haru::Page  page
	CODE:
	RETVAL = HPDF_Page_GetMiterLimit(page);
	OUTPUT:
	RETVAL

void
GetDash (page)
	PDF::Haru::Page  page
	PREINIT:
	AV * ptn;
	int n;
	HPDF_DashMode mode;
	PPCODE:
	mode = HPDF_Page_GetDash (page);
	ptn = (AV *)sv_2mortal((SV *)newAV());
	for (n = 0; n < mode.num_ptn; n++) {
		av_push(ptn, newSViv(mode.ptn[n]));
	}
	XPUSHs(newRV((SV *)ptn));	
	XPUSHs(sv_2mortal(newSViv(mode.phase)));	

float
GetFlat (page)
	PDF::Haru::Page page
	CODE:
	RETVAL = HPDF_Page_GetFlat (page);
	OUTPUT:
	RETVAL

float
GetCharSpace (page)
	PDF::Haru::Page page
	CODE:
	RETVAL = HPDF_Page_GetCharSpace (page);
	OUTPUT:
	RETVAL

float
GetWordSpace (page)
	PDF::Haru::Page page
	CODE:
	RETVAL = HPDF_Page_GetWordSpace (page);
	OUTPUT:
	RETVAL

float
GetHorizontalScalling (page)
	PDF::Haru::Page page
	CODE:
	RETVAL = HPDF_Page_GetHorizontalScalling (page);
	OUTPUT:
	RETVAL

float
GetTextLeading (page)
	PDF::Haru::Page page
	CODE:
	RETVAL = HPDF_Page_GetTextLeading (page);
	OUTPUT:
	RETVAL

float
GetTextRenderingMode (page)
	PDF::Haru::Page page
	CODE:
	RETVAL = HPDF_Page_GetTextRenderingMode (page);
	OUTPUT:
	RETVAL

float
GetTextRise (page)
	PDF::Haru::Page page
	CODE:
	RETVAL = HPDF_Page_GetTextRise (page);
	OUTPUT:
	RETVAL

void
GetRGBFill (page)
	PDF::Haru::Page page
	PREINIT:
	HPDF_RGBColor color;
	PPCODE:
	color = HPDF_Page_GetRGBFill (page);
	XPUSHs(sv_2mortal(newSVnv(color.r)));
	XPUSHs(sv_2mortal(newSVnv(color.g)));
	XPUSHs(sv_2mortal(newSVnv(color.b)));

void
GetRGBStroke (page)
	PDF::Haru::Page page
	PREINIT:
	HPDF_RGBColor color;
	PPCODE:
	color = HPDF_Page_GetRGBStroke (page);
	XPUSHs(sv_2mortal(newSVnv(color.r)));
	XPUSHs(sv_2mortal(newSVnv(color.g)));
	XPUSHs(sv_2mortal(newSVnv(color.b)));

void
GetCMYKFill (page)
	PDF::Haru::Page page
	PREINIT:
	HPDF_CMYKColor color;
	PPCODE:
	color = HPDF_Page_GetCMYKFill (page);
	XPUSHs(sv_2mortal(newSVnv(color.c)));
	XPUSHs(sv_2mortal(newSVnv(color.m)));
	XPUSHs(sv_2mortal(newSVnv(color.y)));
	XPUSHs(sv_2mortal(newSVnv(color.k)));

void
GetCMYKStroke (page)
	PDF::Haru::Page page
	PREINIT:
	HPDF_CMYKColor color;
	PPCODE:
	color = HPDF_Page_GetCMYKStroke (page);
	XPUSHs(sv_2mortal(newSVnv(color.c)));
	XPUSHs(sv_2mortal(newSVnv(color.m)));
	XPUSHs(sv_2mortal(newSVnv(color.y)));
	XPUSHs(sv_2mortal(newSVnv(color.k)));

float
GetGrayFill (page)
	PDF::Haru::Page page
	CODE:
	RETVAL = HPDF_Page_GetGrayFill (page);
	OUTPUT:
	RETVAL
	
float
GetGrayStroke (page)
	PDF::Haru::Page page
	CODE:
	RETVAL = HPDF_Page_GetGrayStroke (page);
	OUTPUT:
	RETVAL

HPDF_ColorSpace
GetStrokingColorSpace(page)
	PDF::Haru::Page page
	CODE:
	RETVAL = HPDF_Page_GetStrokingColorSpace (page);
	OUTPUT:
	RETVAL

HPDF_ColorSpace
GetFillingColorSpace(page)
	PDF::Haru::Page page
	CODE:
	RETVAL = HPDF_Page_GetFillingColorSpace (page);
	OUTPUT:
	RETVAL

void 
GetTextMatrix (page)
	PDF::Haru::Page   page
	PREINIT:
	HPDF_TransMatrix matrix;
	PPCODE:
	matrix = HPDF_Page_GetTextMatrix  (page);
	XPUSHs(sv_2mortal(newSVnv(matrix.a)));
	XPUSHs(sv_2mortal(newSVnv(matrix.b)));	
	XPUSHs(sv_2mortal(newSVnv(matrix.c)));
	XPUSHs(sv_2mortal(newSVnv(matrix.d)));	
	XPUSHs(sv_2mortal(newSVnv(matrix.x)));
	XPUSHs(sv_2mortal(newSVnv(matrix.y)));	

HPDF_UINT
GetGStateDepth (page)
	PDF::Haru::Page  page
	CODE:
	RETVAL = HPDF_Page_GetGStateDepth  (page);
	OUTPUT:
	RETVAL

HPDF_STATUS
SetSlideShow  (page,type,disp_time,trans_time)
	PDF::Haru::Page            page
	HPDF_TransitionStyle   type
	HPDF_REAL            disp_time
	HPDF_REAL            trans_time
	CODE:
	RETVAL = HPDF_Page_SetSlideShow  (page,type,disp_time,trans_time);
	OUTPUT:
	RETVAL	

HPDF_STATUS
Arc  (page, x, y, ray, ang1, ang2)
	PDF::Haru::Page    page
	HPDF_REAL    x
	HPDF_REAL    y
	HPDF_REAL    ray
	HPDF_REAL    ang1
	HPDF_REAL    ang2
	CODE:
	RETVAL = HPDF_Page_Arc  (page, x, y, ray, ang1, ang2);
	OUTPUT:
	RETVAL

HPDF_STATUS
BeginText(page)
	PDF::Haru::Page  page
	CODE:
	RETVAL = HPDF_Page_BeginText(page);
	OUTPUT:
	RETVAL

HPDF_STATUS
Circle  (page, x, y, ray)
	PDF::Haru::Page     page
	HPDF_REAL     x
	HPDF_REAL     y
	HPDF_REAL     ray
	CODE:
	RETVAL = HPDF_Page_Circle  (page, x, y, ray);
	OUTPUT:
	RETVAL

HPDF_STATUS

Haru.xs  view on Meta::CPAN

	OUTPUT:
	RETVAL
	
HPDF_STATUS
TextOut  (page, xpos, ypos, text)
	PDF::Haru::Page    page
	HPDF_REAL    xpos
	HPDF_REAL    ypos
	char  *text
	CODE:
	RETVAL = HPDF_Page_TextOut  (page, xpos, ypos, text);
	OUTPUT:
	RETVAL

HPDF_STATUS
TextRect  (page, left, top, right, bottom, text, align)
	PDF::Haru::Page            page
	HPDF_REAL            left
	HPDF_REAL            top
	HPDF_REAL            right
	HPDF_REAL            bottom
	char          *text
	HPDF_TextAlignment   align
	CODE:
	RETVAL = HPDF_Page_TextRect  (page, left,  top, right, bottom, text, align, NULL);
	OUTPUT:
	RETVAL	

MODULE = PDF::Haru		PACKAGE = PDF::Haru::Font

const char * 
GetFontName (font)
	PDF::Haru::Font font
	CODE:
	RETVAL = HPDF_Font_GetFontName (font);
	OUTPUT:
	RETVAL	

const char * 
GetEncodingName (font)
	PDF::Haru::Font font
	CODE:
	RETVAL = HPDF_Font_GetEncodingName (font);
	OUTPUT:
	RETVAL	

HPDF_INT 
GetUnicodeWidth (font, code)
	PDF::Haru::Font font
	HPDF_UINT16 code
	CODE:
	RETVAL = HPDF_Font_GetUnicodeWidth (font, code);
	OUTPUT:
	RETVAL	

void
GetBBox (font);
	PDF::Haru::Font font
	PREINIT:
	HPDF_Box box;
	PPCODE:
	box = HPDF_Font_GetBBox (font);
	XPUSHs(sv_2mortal(newSVnv(box.left)));
	XPUSHs(sv_2mortal(newSVnv(box.bottom)));
	XPUSHs(sv_2mortal(newSVnv(box.right)));
	XPUSHs(sv_2mortal(newSVnv(box.top)));
	
HPDF_INT 
GetAscent (font)
	PDF::Haru::Font font
	CODE:
	RETVAL = HPDF_Font_GetAscent (font);
	OUTPUT:
	RETVAL	

HPDF_INT 
GetDescent (font)
	PDF::Haru::Font font
	CODE:
	RETVAL = HPDF_Font_GetDescent (font);
	OUTPUT:
	RETVAL	
	
HPDF_UINT 
GetXHeight (font)
	PDF::Haru::Font font
	CODE:
	RETVAL = HPDF_Font_GetXHeight (font);
	OUTPUT:
	RETVAL

HPDF_UINT 
GetCapHeight (font)
	PDF::Haru::Font font
	CODE:
	RETVAL = HPDF_Font_GetCapHeight (font);
	OUTPUT:
	RETVAL

void 
TextWidth  (font,text,len);
	PDF::Haru::Font          font
	const char   *text
	HPDF_UINT          len
	PREINIT:
	HPDF_TextWidth textwidth;
	PPCODE:
	textwidth = HPDF_Font_TextWidth  (font,(const unsigned char*)text,len);
	XPUSHs(sv_2mortal(newSViv(textwidth.numchars)));
	XPUSHs(sv_2mortal(newSViv(textwidth.numwords)));
	XPUSHs(sv_2mortal(newSViv(textwidth.width)));
	XPUSHs(sv_2mortal(newSViv(textwidth.numspace)));	

HPDF_UINT 
MeasureText (font,text,len,width,font_size,char_space,word_space,wordwrap);
	PDF::Haru::Font          font
	const char   *text
	HPDF_UINT          len
	HPDF_REAL          width
	HPDF_REAL          font_size
	HPDF_REAL          char_space
	HPDF_REAL          word_space
	HPDF_BOOL          wordwrap
	CODE:
	RETVAL = HPDF_Font_MeasureText (font,(const unsigned char*)text,len,width,font_size,char_space,word_space,wordwrap,NULL);
	OUTPUT:
	RETVAL	

MODULE = PDF::Haru		PACKAGE = PDF::Haru::Annotation

HPDF_STATUS
LinkAnnot_SetHighlightMode (annot,mode)
	PDF::Haru::Annotation         annot
	HPDF_AnnotHighlightMode mode
	CODE:
	RETVAL = HPDF_LinkAnnot_SetHighlightMode (annot,mode);
	OUTPUT:
	RETVAL

HPDF_STATUS
LinkAnnot_SetBorderStyle  (annot,width,dash_on,dash_off)
	PDF::Haru::Annotation  annot
	HPDF_REAL        width
	HPDF_UINT16      dash_on
	HPDF_UINT16      dash_off
	CODE:
	RETVAL = HPDF_LinkAnnot_SetBorderStyle (annot,width,dash_on,dash_off);
	OUTPUT:
	RETVAL

HPDF_STATUS 
TextAnnot_SetIcon  (annot,icon)
	PDF::Haru::Annotation   annot
	HPDF_AnnotIcon    icon
	CODE:
	RETVAL = HPDF_TextAnnot_SetIcon  (annot,icon);
	OUTPUT:
	RETVAL

HPDF_STATUS
TextAnnot_SetOpened (annot,open)
	PDF::Haru::Annotation annot
	HPDF_BOOL       open
	CODE:
	RETVAL = HPDF_TextAnnot_SetOpened (annot,open);
	OUTPUT:
	RETVAL

Haru.xs  view on Meta::CPAN

	HPDF_REAL         top
	CODE:
	RETVAL = HPDF_Destination_SetFitH (dst,top);
	OUTPUT:
	RETVAL	

HPDF_STATUS 
SetFitV  (dst,left)
	PDF::Haru::Destination  dst
	HPDF_REAL         left
	CODE:
	RETVAL = HPDF_Destination_SetFitV  (dst,left);
	OUTPUT:
	RETVAL	
	
HPDF_STATUS 
SetFitR  (dst,left,bottom,right,top)
	PDF::Haru::Destination  dst
	HPDF_REAL         left
	HPDF_REAL         bottom
	HPDF_REAL         right
	HPDF_REAL         top
	CODE:
	RETVAL = HPDF_Destination_SetFitR  (dst,left,bottom,right,top);
	OUTPUT:
	RETVAL		

HPDF_STATUS 
SetFitB (dst)
	PDF::Haru::Destination  dst
	CODE:
	RETVAL = HPDF_Destination_SetFitB (dst);
	OUTPUT:
	RETVAL		

HPDF_STATUS 
SetFitBH  (dst,top);
	PDF::Haru::Destination  dst
	HPDF_REAL         top
	CODE:
	RETVAL = HPDF_Destination_SetFitBH  (dst,top);
	OUTPUT:
	RETVAL	

HPDF_STATUS 
SetFitBV  (dst, top)
	PDF::Haru::Destination  dst
	HPDF_REAL         top
	CODE:
	RETVAL = HPDF_Destination_SetFitBV  (dst, top);
	OUTPUT:
	RETVAL	

MODULE = PDF::Haru		PACKAGE = PDF::Haru::Image

void
HPDF_Image_GetSize (image)
	PDF::Haru::Image image
	PREINIT:
	HPDF_Point point;
	PPCODE:
	point = HPDF_Image_GetSize (image);
	XPUSHs(sv_2mortal(newSVnv(point.x)));
	XPUSHs(sv_2mortal(newSVnv(point.y)));	

HPDF_UINT
GetWidth (image)
	PDF::Haru::Image  image
	CODE:
	RETVAL = HPDF_Image_GetWidth (image);
	OUTPUT:
	RETVAL

HPDF_UINT
GetHeight (image)
	PDF::Haru::Image  image
	CODE:
	RETVAL = HPDF_Image_GetHeight (image);
	OUTPUT:
	RETVAL

HPDF_UINT
GetBitsPerComponent (image)
	PDF::Haru::Image  image
	CODE:
	RETVAL = HPDF_Image_GetBitsPerComponent (image);
	OUTPUT:
	RETVAL

const char*
GetColorSpace(image)
	PDF::Haru::Image  image
	CODE:
	RETVAL = HPDF_Image_GetColorSpace(image);
	OUTPUT:
	RETVAL

HPDF_STATUS
SetColorMask (image, rmin, rmax, gmin, gmax, bmin, bmax)
	PDF::Haru::Image   image
	HPDF_UINT    rmin
	HPDF_UINT    rmax
	HPDF_UINT    gmin
	HPDF_UINT    gmax
	HPDF_UINT    bmin
	HPDF_UINT    bmax
	CODE:
	RETVAL = HPDF_Image_SetColorMask (image, rmin, rmax, gmin, gmax, bmin, bmax);
	OUTPUT:
	RETVAL

HPDF_STATUS
SetMaskImage  (image, mask_image)
	PDF::Haru::Image   image
	PDF::Haru::Image   mask_image
	CODE:
	RETVAL = HPDF_Image_SetMaskImage  (image, mask_image);
	OUTPUT:
	RETVAL

MODULE = PDF::Haru		PACKAGE = PDF::Haru::ExtGState



( run in 1.766 second using v1.01-cache-2.11-cpan-5511b514fd6 )