public void PDFiumBridge_FPDFRenderPageBitmapWithMatrix_SimpleCall_NoException() { var matrix = new FS_MATRIX(); var clipping = new FS_RECTF(); _bridge.FPDF_RenderPageBitmapWithMatrix(FPDF_BITMAP.InvalidHandle, FPDF_PAGE.InvalidHandle, ref matrix, ref clipping, FPDF_RENDERING_FLAGS.FPDF_NONE); }
/// <summary> /// Render the page to the bitmap. /// </summary> /// <param name="page">Page to render.</param> /// <param name="zoomFactor">Zoom factor to use for transformation.</param> /// <param name="startX">Left pixel position of the page area to render.</param> /// <param name="startY">Top pixel position of the page area to render.</param> /// <param name="sizeX">Width of the page area to render.</param> /// <param name="sizeY">Height of the page area to render.</param> /// <param name="flags">Rendering flags to use for rendering.</param> public void RenderWithTransformation(FPDF_PAGE page, double zoomFactor, int startX, int startY, int sizeX, int sizeY, FPDF_RENDERING_FLAGS flags) { // Translation is performed with [1 0 0 1 tx ty]. // Scaling is performed with [sx 0 0 sy 0 0]. FS_MATRIX matrix = new FS_MATRIX { A = (float)zoomFactor, B = 0, C = 0, D = (float)zoomFactor, E = startX > 0f ? 0f : startX, F = startY > 0f ? 0f : startY }; FS_RECTF rect = new FS_RECTF { Left = startX, Right = startX + sizeX, Top = startY, Bottom = startY + sizeY }; _mainComponent.PDFiumBridge.FPDF_RenderPageBitmapWithMatrix(_bitmapHandle, page, ref matrix, ref rect, flags); }
public void FPDFVIEW_Render_Call() { var pdfFile = Path.Combine(_pdfFilesFolder, "Precalculus.pdf"); var bridge = new PDFiumBridge(); var document = bridge.FPDF_LoadDocument(pdfFile, null); Assert.IsTrue(document.IsValid); var page = bridge.FPDF_LoadPage(document, 0); Assert.IsTrue(page.IsValid); var bitmap = bridge.FPDFBitmap_Create(100, 200, false); Assert.IsTrue(bitmap.IsValid); bridge.FPDF_RenderPageBitmap(bitmap, page, 0, 0, 100, 200, 0, 0); bridge.FPDFBitmap_Destroy(bitmap); bitmap = bridge.FPDFBitmap_Create(1000, 2000, false); Assert.IsTrue(bitmap.IsValid); var matrix = new FS_MATRIX { A = 1, B = 0, C = 0, D = 1, E = 1, F = 1, }; var rect = new FS_RECTF { Left = 0, Right = 612, Top = 792, Bottom = 0, }; bridge.FPDF_RenderPageBitmapWithMatrix(bitmap, page, ref matrix, ref rect, 0); bridge.FPDFBitmap_Destroy(bitmap); bridge.FPDF_ClosePage(page); bridge.FPDF_CloseDocument(document); bridge.Dispose(); }
public void PDFiumBridge_FPDFTextGetMatrix_SimpleCall_NoException() { var matrix = new FS_MATRIX(); _bridge.FPDFText_GetMatrix(FPDF_TEXTPAGE.InvalidHandle, 0, ref matrix); }
public static extern void FPDF_RenderPageBitmapWithMatrix(IntPtr bitmap, IntPtr page, [In] ref FS_MATRIX matrix, [In] ref FS_RECTF clipping, int flags);