Oracle Apex PDF Viewer











up vote
0
down vote

favorite












i am new in Oracle-Apex. I need Help to show a PDF in Oracle APEX. I have a question: I have uploaded the PDF in to the Database. I save the PDF as a blob in database. After that i showed the name of the PDF in Classic Report.When i click on the name, i want to see the preview of the PDF that i had uploaded.
Now i am searching a way to show the PDF with a Code. Can somebody help?



I need previous and next button.



How can i show this PDF in the Region?here is my Page










share|improve this question




























    up vote
    0
    down vote

    favorite












    i am new in Oracle-Apex. I need Help to show a PDF in Oracle APEX. I have a question: I have uploaded the PDF in to the Database. I save the PDF as a blob in database. After that i showed the name of the PDF in Classic Report.When i click on the name, i want to see the preview of the PDF that i had uploaded.
    Now i am searching a way to show the PDF with a Code. Can somebody help?



    I need previous and next button.



    How can i show this PDF in the Region?here is my Page










    share|improve this question


























      up vote
      0
      down vote

      favorite









      up vote
      0
      down vote

      favorite











      i am new in Oracle-Apex. I need Help to show a PDF in Oracle APEX. I have a question: I have uploaded the PDF in to the Database. I save the PDF as a blob in database. After that i showed the name of the PDF in Classic Report.When i click on the name, i want to see the preview of the PDF that i had uploaded.
      Now i am searching a way to show the PDF with a Code. Can somebody help?



      I need previous and next button.



      How can i show this PDF in the Region?here is my Page










      share|improve this question















      i am new in Oracle-Apex. I need Help to show a PDF in Oracle APEX. I have a question: I have uploaded the PDF in to the Database. I save the PDF as a blob in database. After that i showed the name of the PDF in Classic Report.When i click on the name, i want to see the preview of the PDF that i had uploaded.
      Now i am searching a way to show the PDF with a Code. Can somebody help?



      I need previous and next button.



      How can i show this PDF in the Region?here is my Page







      oracle pdf oracle-apex






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited yesterday

























      asked Oct 26 at 6:54









      canberkcelik

      114




      114
























          1 Answer
          1






          active

          oldest

          votes

















          up vote
          2
          down vote



          accepted










          Here's an example I quickly whipped up using APEX_APPLICATION_TEMP_FILES. Hopefully it's what you're trying to achieve.
          https://apex.oracle.com/pls/apex/f?p=34781




          Username: demo

          Password: demo




          This uses the PDF.js project by Mozilla. Here's a quick recipe of what you may need.




          1. Create a File Browse page item and set the Storage Type to Table APEX_APPLICATION_TEMP_FILES.

          2. Create a page button to submit the page.


          3. Create a Classic Report region and enter the following query:



            select
            id
            , filename
            from apex_application_temp_files
            where application_id = :APP_ID



          4. Add a virtual column and set the HTML Expression:



            <button type="button" class="btn-preview-pdf" data-id="#ID#">Preview</button>



          5. Create a region and enter the following in the Source:



            <canvas id="preview-pane"></canvas> 



          6. Create a Click dynamic action.



            a. Set the selection Type to jQuery Selector.



            b. Enter the jQuery Selector .btn-preview-pdf.




          7. Add a Execute JavaScript Code action with the following JS code (check out the examples from the PDF.js website for more details on what the code does):



            var fileId = $(this.triggeringElement).data('id');
            var docUrl = 'f?p=&APP_ID.:0:&APP_SESSION.:APPLICATION_PROCESS=DOWNLOADPDF:::FILE_ID:' + fileId;
            var previewPane = this.affectedElements[0];

            // from PDF.js examples
            pdfjsLib.getDocument(docUrl).then(function(pdf) {
            var pageNumber = 1;
            pdf.getPage(pageNumber).then(function(page) {
            console.log('Page loaded');

            var scale = 1.5;
            var viewport = page.getViewport(scale);

            // Prepare canvas using PDF page dimensions
            var canvas = previewPane;
            var context = canvas.getContext('2d');
            canvas.height = viewport.height;
            canvas.width = viewport.width;

            // Render PDF page into canvas context
            var renderContext = {
            canvasContext: context,
            viewport: viewport
            };
            var renderTask = page.render(renderContext);
            renderTask.then(function () {
            console.log('Page rendered');
            });
            })
            }, function(reason) {
            console.error(reason);
            });



          8. For the action, also set the Affected Elements:



            a. Selection Type: jQuery Selector



            b. jQuery Selector: #preview-pane




          9. Follow Joel Kallman's post on creating a link to download a file. You will need an Application Process (DOWNLOADPDF) and an Application Item (FILE_ID) The modified code for the Application Process DOWNLOADPDF looks like this:



            begin
            for file in (select *
            from apex_application_temp_files
            where id = :FILE_ID) loop
            --
            sys.htp.init;
            sys.owa_util.mime_header( file.mime_type, FALSE );
            sys.htp.p('Content-length: ' || sys.dbms_lob.getlength( file.blob_content));
            sys.htp.p('Content-Disposition: attachment; filename="' || file.filename || '"' );
            sys.htp.p('Cache-Control: max-age=3600'); -- tell the browser to cache for one hour, adjust as necessary
            sys.owa_util.http_header_close;
            sys.wpg_docload.download_file( file.blob_content );

            apex_application.stop_apex_engine;
            end loop;
            end;



          10. Almost missed this out. On the Page Attributes, set the JavaScript File URLs to any of the CDNs listed. For example:



            //cdnjs.cloudflare.com/ajax/libs/pdf.js/2.0.550/pdf.min.js




          Note that this is a very basic prototype. The preview only allows you to view the first page. You will need to figure out the API and then do the necessary to allow multipage viewing. I'll leave you to figure that out.



          That should be it. Let me know if it doesn't work for you.






          share|improve this answer























          • It's work! Thanks man, You saved my life. How can i change to multipage viewing ?
            – canberkcelik
            Oct 28 at 11:30










          • I have updated the demo to show case pagination. It's a crude solution. I will update the post another time with details. Meanwhile, take a look at the new buttons and the JavaScript. As mention, the trick is in the page rendering function and the page number parameter that it takes. It will benefit you to think of how to use this on your own.
            – Adrian P
            Oct 28 at 22:26










          • I saw Demo. It's cool. I need only Prev. und next button. Can you send me details? Thanks
            – canberkcelik
            Oct 29 at 7:39










          • Can you share the next and previous buttons code please, thank you @Adrian P
            – canberkcelik
            Nov 15 at 12:12











          Your Answer






          StackExchange.ifUsing("editor", function () {
          StackExchange.using("externalEditor", function () {
          StackExchange.using("snippets", function () {
          StackExchange.snippets.init();
          });
          });
          }, "code-snippets");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "1"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














           

          draft saved


          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53003083%2foracle-apex-pdf-viewer%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes








          up vote
          2
          down vote



          accepted










          Here's an example I quickly whipped up using APEX_APPLICATION_TEMP_FILES. Hopefully it's what you're trying to achieve.
          https://apex.oracle.com/pls/apex/f?p=34781




          Username: demo

          Password: demo




          This uses the PDF.js project by Mozilla. Here's a quick recipe of what you may need.




          1. Create a File Browse page item and set the Storage Type to Table APEX_APPLICATION_TEMP_FILES.

          2. Create a page button to submit the page.


          3. Create a Classic Report region and enter the following query:



            select
            id
            , filename
            from apex_application_temp_files
            where application_id = :APP_ID



          4. Add a virtual column and set the HTML Expression:



            <button type="button" class="btn-preview-pdf" data-id="#ID#">Preview</button>



          5. Create a region and enter the following in the Source:



            <canvas id="preview-pane"></canvas> 



          6. Create a Click dynamic action.



            a. Set the selection Type to jQuery Selector.



            b. Enter the jQuery Selector .btn-preview-pdf.




          7. Add a Execute JavaScript Code action with the following JS code (check out the examples from the PDF.js website for more details on what the code does):



            var fileId = $(this.triggeringElement).data('id');
            var docUrl = 'f?p=&APP_ID.:0:&APP_SESSION.:APPLICATION_PROCESS=DOWNLOADPDF:::FILE_ID:' + fileId;
            var previewPane = this.affectedElements[0];

            // from PDF.js examples
            pdfjsLib.getDocument(docUrl).then(function(pdf) {
            var pageNumber = 1;
            pdf.getPage(pageNumber).then(function(page) {
            console.log('Page loaded');

            var scale = 1.5;
            var viewport = page.getViewport(scale);

            // Prepare canvas using PDF page dimensions
            var canvas = previewPane;
            var context = canvas.getContext('2d');
            canvas.height = viewport.height;
            canvas.width = viewport.width;

            // Render PDF page into canvas context
            var renderContext = {
            canvasContext: context,
            viewport: viewport
            };
            var renderTask = page.render(renderContext);
            renderTask.then(function () {
            console.log('Page rendered');
            });
            })
            }, function(reason) {
            console.error(reason);
            });



          8. For the action, also set the Affected Elements:



            a. Selection Type: jQuery Selector



            b. jQuery Selector: #preview-pane




          9. Follow Joel Kallman's post on creating a link to download a file. You will need an Application Process (DOWNLOADPDF) and an Application Item (FILE_ID) The modified code for the Application Process DOWNLOADPDF looks like this:



            begin
            for file in (select *
            from apex_application_temp_files
            where id = :FILE_ID) loop
            --
            sys.htp.init;
            sys.owa_util.mime_header( file.mime_type, FALSE );
            sys.htp.p('Content-length: ' || sys.dbms_lob.getlength( file.blob_content));
            sys.htp.p('Content-Disposition: attachment; filename="' || file.filename || '"' );
            sys.htp.p('Cache-Control: max-age=3600'); -- tell the browser to cache for one hour, adjust as necessary
            sys.owa_util.http_header_close;
            sys.wpg_docload.download_file( file.blob_content );

            apex_application.stop_apex_engine;
            end loop;
            end;



          10. Almost missed this out. On the Page Attributes, set the JavaScript File URLs to any of the CDNs listed. For example:



            //cdnjs.cloudflare.com/ajax/libs/pdf.js/2.0.550/pdf.min.js




          Note that this is a very basic prototype. The preview only allows you to view the first page. You will need to figure out the API and then do the necessary to allow multipage viewing. I'll leave you to figure that out.



          That should be it. Let me know if it doesn't work for you.






          share|improve this answer























          • It's work! Thanks man, You saved my life. How can i change to multipage viewing ?
            – canberkcelik
            Oct 28 at 11:30










          • I have updated the demo to show case pagination. It's a crude solution. I will update the post another time with details. Meanwhile, take a look at the new buttons and the JavaScript. As mention, the trick is in the page rendering function and the page number parameter that it takes. It will benefit you to think of how to use this on your own.
            – Adrian P
            Oct 28 at 22:26










          • I saw Demo. It's cool. I need only Prev. und next button. Can you send me details? Thanks
            – canberkcelik
            Oct 29 at 7:39










          • Can you share the next and previous buttons code please, thank you @Adrian P
            – canberkcelik
            Nov 15 at 12:12















          up vote
          2
          down vote



          accepted










          Here's an example I quickly whipped up using APEX_APPLICATION_TEMP_FILES. Hopefully it's what you're trying to achieve.
          https://apex.oracle.com/pls/apex/f?p=34781




          Username: demo

          Password: demo




          This uses the PDF.js project by Mozilla. Here's a quick recipe of what you may need.




          1. Create a File Browse page item and set the Storage Type to Table APEX_APPLICATION_TEMP_FILES.

          2. Create a page button to submit the page.


          3. Create a Classic Report region and enter the following query:



            select
            id
            , filename
            from apex_application_temp_files
            where application_id = :APP_ID



          4. Add a virtual column and set the HTML Expression:



            <button type="button" class="btn-preview-pdf" data-id="#ID#">Preview</button>



          5. Create a region and enter the following in the Source:



            <canvas id="preview-pane"></canvas> 



          6. Create a Click dynamic action.



            a. Set the selection Type to jQuery Selector.



            b. Enter the jQuery Selector .btn-preview-pdf.




          7. Add a Execute JavaScript Code action with the following JS code (check out the examples from the PDF.js website for more details on what the code does):



            var fileId = $(this.triggeringElement).data('id');
            var docUrl = 'f?p=&APP_ID.:0:&APP_SESSION.:APPLICATION_PROCESS=DOWNLOADPDF:::FILE_ID:' + fileId;
            var previewPane = this.affectedElements[0];

            // from PDF.js examples
            pdfjsLib.getDocument(docUrl).then(function(pdf) {
            var pageNumber = 1;
            pdf.getPage(pageNumber).then(function(page) {
            console.log('Page loaded');

            var scale = 1.5;
            var viewport = page.getViewport(scale);

            // Prepare canvas using PDF page dimensions
            var canvas = previewPane;
            var context = canvas.getContext('2d');
            canvas.height = viewport.height;
            canvas.width = viewport.width;

            // Render PDF page into canvas context
            var renderContext = {
            canvasContext: context,
            viewport: viewport
            };
            var renderTask = page.render(renderContext);
            renderTask.then(function () {
            console.log('Page rendered');
            });
            })
            }, function(reason) {
            console.error(reason);
            });



          8. For the action, also set the Affected Elements:



            a. Selection Type: jQuery Selector



            b. jQuery Selector: #preview-pane




          9. Follow Joel Kallman's post on creating a link to download a file. You will need an Application Process (DOWNLOADPDF) and an Application Item (FILE_ID) The modified code for the Application Process DOWNLOADPDF looks like this:



            begin
            for file in (select *
            from apex_application_temp_files
            where id = :FILE_ID) loop
            --
            sys.htp.init;
            sys.owa_util.mime_header( file.mime_type, FALSE );
            sys.htp.p('Content-length: ' || sys.dbms_lob.getlength( file.blob_content));
            sys.htp.p('Content-Disposition: attachment; filename="' || file.filename || '"' );
            sys.htp.p('Cache-Control: max-age=3600'); -- tell the browser to cache for one hour, adjust as necessary
            sys.owa_util.http_header_close;
            sys.wpg_docload.download_file( file.blob_content );

            apex_application.stop_apex_engine;
            end loop;
            end;



          10. Almost missed this out. On the Page Attributes, set the JavaScript File URLs to any of the CDNs listed. For example:



            //cdnjs.cloudflare.com/ajax/libs/pdf.js/2.0.550/pdf.min.js




          Note that this is a very basic prototype. The preview only allows you to view the first page. You will need to figure out the API and then do the necessary to allow multipage viewing. I'll leave you to figure that out.



          That should be it. Let me know if it doesn't work for you.






          share|improve this answer























          • It's work! Thanks man, You saved my life. How can i change to multipage viewing ?
            – canberkcelik
            Oct 28 at 11:30










          • I have updated the demo to show case pagination. It's a crude solution. I will update the post another time with details. Meanwhile, take a look at the new buttons and the JavaScript. As mention, the trick is in the page rendering function and the page number parameter that it takes. It will benefit you to think of how to use this on your own.
            – Adrian P
            Oct 28 at 22:26










          • I saw Demo. It's cool. I need only Prev. und next button. Can you send me details? Thanks
            – canberkcelik
            Oct 29 at 7:39










          • Can you share the next and previous buttons code please, thank you @Adrian P
            – canberkcelik
            Nov 15 at 12:12













          up vote
          2
          down vote



          accepted







          up vote
          2
          down vote



          accepted






          Here's an example I quickly whipped up using APEX_APPLICATION_TEMP_FILES. Hopefully it's what you're trying to achieve.
          https://apex.oracle.com/pls/apex/f?p=34781




          Username: demo

          Password: demo




          This uses the PDF.js project by Mozilla. Here's a quick recipe of what you may need.




          1. Create a File Browse page item and set the Storage Type to Table APEX_APPLICATION_TEMP_FILES.

          2. Create a page button to submit the page.


          3. Create a Classic Report region and enter the following query:



            select
            id
            , filename
            from apex_application_temp_files
            where application_id = :APP_ID



          4. Add a virtual column and set the HTML Expression:



            <button type="button" class="btn-preview-pdf" data-id="#ID#">Preview</button>



          5. Create a region and enter the following in the Source:



            <canvas id="preview-pane"></canvas> 



          6. Create a Click dynamic action.



            a. Set the selection Type to jQuery Selector.



            b. Enter the jQuery Selector .btn-preview-pdf.




          7. Add a Execute JavaScript Code action with the following JS code (check out the examples from the PDF.js website for more details on what the code does):



            var fileId = $(this.triggeringElement).data('id');
            var docUrl = 'f?p=&APP_ID.:0:&APP_SESSION.:APPLICATION_PROCESS=DOWNLOADPDF:::FILE_ID:' + fileId;
            var previewPane = this.affectedElements[0];

            // from PDF.js examples
            pdfjsLib.getDocument(docUrl).then(function(pdf) {
            var pageNumber = 1;
            pdf.getPage(pageNumber).then(function(page) {
            console.log('Page loaded');

            var scale = 1.5;
            var viewport = page.getViewport(scale);

            // Prepare canvas using PDF page dimensions
            var canvas = previewPane;
            var context = canvas.getContext('2d');
            canvas.height = viewport.height;
            canvas.width = viewport.width;

            // Render PDF page into canvas context
            var renderContext = {
            canvasContext: context,
            viewport: viewport
            };
            var renderTask = page.render(renderContext);
            renderTask.then(function () {
            console.log('Page rendered');
            });
            })
            }, function(reason) {
            console.error(reason);
            });



          8. For the action, also set the Affected Elements:



            a. Selection Type: jQuery Selector



            b. jQuery Selector: #preview-pane




          9. Follow Joel Kallman's post on creating a link to download a file. You will need an Application Process (DOWNLOADPDF) and an Application Item (FILE_ID) The modified code for the Application Process DOWNLOADPDF looks like this:



            begin
            for file in (select *
            from apex_application_temp_files
            where id = :FILE_ID) loop
            --
            sys.htp.init;
            sys.owa_util.mime_header( file.mime_type, FALSE );
            sys.htp.p('Content-length: ' || sys.dbms_lob.getlength( file.blob_content));
            sys.htp.p('Content-Disposition: attachment; filename="' || file.filename || '"' );
            sys.htp.p('Cache-Control: max-age=3600'); -- tell the browser to cache for one hour, adjust as necessary
            sys.owa_util.http_header_close;
            sys.wpg_docload.download_file( file.blob_content );

            apex_application.stop_apex_engine;
            end loop;
            end;



          10. Almost missed this out. On the Page Attributes, set the JavaScript File URLs to any of the CDNs listed. For example:



            //cdnjs.cloudflare.com/ajax/libs/pdf.js/2.0.550/pdf.min.js




          Note that this is a very basic prototype. The preview only allows you to view the first page. You will need to figure out the API and then do the necessary to allow multipage viewing. I'll leave you to figure that out.



          That should be it. Let me know if it doesn't work for you.






          share|improve this answer














          Here's an example I quickly whipped up using APEX_APPLICATION_TEMP_FILES. Hopefully it's what you're trying to achieve.
          https://apex.oracle.com/pls/apex/f?p=34781




          Username: demo

          Password: demo




          This uses the PDF.js project by Mozilla. Here's a quick recipe of what you may need.




          1. Create a File Browse page item and set the Storage Type to Table APEX_APPLICATION_TEMP_FILES.

          2. Create a page button to submit the page.


          3. Create a Classic Report region and enter the following query:



            select
            id
            , filename
            from apex_application_temp_files
            where application_id = :APP_ID



          4. Add a virtual column and set the HTML Expression:



            <button type="button" class="btn-preview-pdf" data-id="#ID#">Preview</button>



          5. Create a region and enter the following in the Source:



            <canvas id="preview-pane"></canvas> 



          6. Create a Click dynamic action.



            a. Set the selection Type to jQuery Selector.



            b. Enter the jQuery Selector .btn-preview-pdf.




          7. Add a Execute JavaScript Code action with the following JS code (check out the examples from the PDF.js website for more details on what the code does):



            var fileId = $(this.triggeringElement).data('id');
            var docUrl = 'f?p=&APP_ID.:0:&APP_SESSION.:APPLICATION_PROCESS=DOWNLOADPDF:::FILE_ID:' + fileId;
            var previewPane = this.affectedElements[0];

            // from PDF.js examples
            pdfjsLib.getDocument(docUrl).then(function(pdf) {
            var pageNumber = 1;
            pdf.getPage(pageNumber).then(function(page) {
            console.log('Page loaded');

            var scale = 1.5;
            var viewport = page.getViewport(scale);

            // Prepare canvas using PDF page dimensions
            var canvas = previewPane;
            var context = canvas.getContext('2d');
            canvas.height = viewport.height;
            canvas.width = viewport.width;

            // Render PDF page into canvas context
            var renderContext = {
            canvasContext: context,
            viewport: viewport
            };
            var renderTask = page.render(renderContext);
            renderTask.then(function () {
            console.log('Page rendered');
            });
            })
            }, function(reason) {
            console.error(reason);
            });



          8. For the action, also set the Affected Elements:



            a. Selection Type: jQuery Selector



            b. jQuery Selector: #preview-pane




          9. Follow Joel Kallman's post on creating a link to download a file. You will need an Application Process (DOWNLOADPDF) and an Application Item (FILE_ID) The modified code for the Application Process DOWNLOADPDF looks like this:



            begin
            for file in (select *
            from apex_application_temp_files
            where id = :FILE_ID) loop
            --
            sys.htp.init;
            sys.owa_util.mime_header( file.mime_type, FALSE );
            sys.htp.p('Content-length: ' || sys.dbms_lob.getlength( file.blob_content));
            sys.htp.p('Content-Disposition: attachment; filename="' || file.filename || '"' );
            sys.htp.p('Cache-Control: max-age=3600'); -- tell the browser to cache for one hour, adjust as necessary
            sys.owa_util.http_header_close;
            sys.wpg_docload.download_file( file.blob_content );

            apex_application.stop_apex_engine;
            end loop;
            end;



          10. Almost missed this out. On the Page Attributes, set the JavaScript File URLs to any of the CDNs listed. For example:



            //cdnjs.cloudflare.com/ajax/libs/pdf.js/2.0.550/pdf.min.js




          Note that this is a very basic prototype. The preview only allows you to view the first page. You will need to figure out the API and then do the necessary to allow multipage viewing. I'll leave you to figure that out.



          That should be it. Let me know if it doesn't work for you.







          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Oct 27 at 19:11

























          answered Oct 27 at 18:33









          Adrian P

          42637




          42637












          • It's work! Thanks man, You saved my life. How can i change to multipage viewing ?
            – canberkcelik
            Oct 28 at 11:30










          • I have updated the demo to show case pagination. It's a crude solution. I will update the post another time with details. Meanwhile, take a look at the new buttons and the JavaScript. As mention, the trick is in the page rendering function and the page number parameter that it takes. It will benefit you to think of how to use this on your own.
            – Adrian P
            Oct 28 at 22:26










          • I saw Demo. It's cool. I need only Prev. und next button. Can you send me details? Thanks
            – canberkcelik
            Oct 29 at 7:39










          • Can you share the next and previous buttons code please, thank you @Adrian P
            – canberkcelik
            Nov 15 at 12:12


















          • It's work! Thanks man, You saved my life. How can i change to multipage viewing ?
            – canberkcelik
            Oct 28 at 11:30










          • I have updated the demo to show case pagination. It's a crude solution. I will update the post another time with details. Meanwhile, take a look at the new buttons and the JavaScript. As mention, the trick is in the page rendering function and the page number parameter that it takes. It will benefit you to think of how to use this on your own.
            – Adrian P
            Oct 28 at 22:26










          • I saw Demo. It's cool. I need only Prev. und next button. Can you send me details? Thanks
            – canberkcelik
            Oct 29 at 7:39










          • Can you share the next and previous buttons code please, thank you @Adrian P
            – canberkcelik
            Nov 15 at 12:12
















          It's work! Thanks man, You saved my life. How can i change to multipage viewing ?
          – canberkcelik
          Oct 28 at 11:30




          It's work! Thanks man, You saved my life. How can i change to multipage viewing ?
          – canberkcelik
          Oct 28 at 11:30












          I have updated the demo to show case pagination. It's a crude solution. I will update the post another time with details. Meanwhile, take a look at the new buttons and the JavaScript. As mention, the trick is in the page rendering function and the page number parameter that it takes. It will benefit you to think of how to use this on your own.
          – Adrian P
          Oct 28 at 22:26




          I have updated the demo to show case pagination. It's a crude solution. I will update the post another time with details. Meanwhile, take a look at the new buttons and the JavaScript. As mention, the trick is in the page rendering function and the page number parameter that it takes. It will benefit you to think of how to use this on your own.
          – Adrian P
          Oct 28 at 22:26












          I saw Demo. It's cool. I need only Prev. und next button. Can you send me details? Thanks
          – canberkcelik
          Oct 29 at 7:39




          I saw Demo. It's cool. I need only Prev. und next button. Can you send me details? Thanks
          – canberkcelik
          Oct 29 at 7:39












          Can you share the next and previous buttons code please, thank you @Adrian P
          – canberkcelik
          Nov 15 at 12:12




          Can you share the next and previous buttons code please, thank you @Adrian P
          – canberkcelik
          Nov 15 at 12:12


















           

          draft saved


          draft discarded



















































           


          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53003083%2foracle-apex-pdf-viewer%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Can a sorcerer learn a 5th-level spell early by creating spell slots using the Font of Magic feature?

          Does disintegrating a polymorphed enemy still kill it after the 2018 errata?

          A Topological Invariant for $pi_3(U(n))$