Exemple #1
0
        private void SetPage(int page)
        {
            PDFRenderer renderer = new PDFRenderer();

            int width  = _document.GetPageWidth(_currentPage);
            int height = _document.GetPageHeight(_currentPage);

            _rawImage.texture = renderer.RenderPageToTexture(_document.GetPage(_currentPage), width, height);

            _aspectRatioFitter.aspectRatio = ((float)width / (float)height);
        }
Exemple #2
0
    public void Create(string dir, string name)
    {
        m_FileName = name;
        m_BookDir  = dir;

        string path = m_BookDir + m_FileName;

        m_Doc = new PDFDocument(path);

        if (m_Doc.IsValid)
        {
            m_PageCount = m_Doc.GetPageCount();

            // Get the cover
            Texture2D tex = m_PDFRenderer.RenderPageToTexture(m_Doc.GetPage(0 % m_PageCount), RENDER_RESOLUTION, RENDER_RESOLUTION);
            tex.filterMode             = FilterMode.Bilinear;
            tex.anisoLevel             = 8;
            cover.material.mainTexture = tex;

            Color bookColor = tex.GetPixel(1, 1);

            // Set the color of the book
            backcover.material.SetColor("_Color", bookColor);
            spine.material.SetColor("_Color", bookColor);

            RenderPages();

            // Set the spine text
            string bookname = m_FileName.Substring(0, m_FileName.Length - 4);
            if (bookname.Length > MAX_SPINE_NAME)
            {
                bookname = bookname.Substring(0, MAX_SPINE_NAME);
            }
            GetComponentInChildren <TextMesh>().text = bookname;
        }
    }
    void Start()
    {
        PDFDocument pdfDocument = new PDFDocument(PDFBytesSupplierExample.PDF_SAMPLE, "");

        if (pdfDocument.IsValid)
        {
            int pageCount = pdfDocument.GetPageCount();

            PDFRenderer renderer = new PDFRenderer();
            Texture2D   tex      = renderer.RenderPageToTexture(pdfDocument.GetPage(m_Page % pageCount), 1024, 1024);

            tex.filterMode = FilterMode.Bilinear;
            tex.anisoLevel = 8;

            GetComponent <MeshRenderer>().material.mainTexture = tex;
        }
    }