在Javascript中旋转对象标记(PDF)

时间:2017-01-18 16:43:15

标签: javascript html pdf pdfobject

我试图通过AcroPdf.dll旋转包含Acrobat Plugin查看的PDF的对象标记。

我已经看过this解决方案,但不要在> = IE9上旋转PDF本身(适用于Chrome)

我使用的是jQuery 1.11.3和PDFObject 1.2,我无法更改jQuery的版本。

效果如下: after click the "object" is rotated, not the content

我想要这个: in chrome also the pdf is rotated

任何帮助将不胜感激。 此致

我的简单代码是:

<!DOCTYPE html>
<html>
<head>
<style>
.rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.00000000, M12=-1.00000000, M21=1.00000000, M22=0.00000000,sizingMethod='auto expand')";
   filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.00000000, M12=-1.00000000, M21=1.00000000, M22=0.00000000,sizingMethod='auto expand');
  transform: rotate(90deg);
  -o-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
}
</style>
<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script type="text/javascript" src="http://miorepository.altervista.org/pdfobject.js"></script>
</head>

<body>
<button onclick="rotatePdf();">Rotate 90 degree</button>
<div id="boxPdf"></div>

<script type='text/javascript'>
            $(function(){

                var pdfPath = './doc1.pdf';

                var customParameter = {
                    page : '1',
                    view : 'FitH,0',
                    pagemode : 'none',
                    scrollbars : '0',
                    toolbar : '0',
                    statusbar : '0',
                    messages : '0',
                    navpanes : '0'
                };

                var myPDF = new PDFObject({
                                    url : pdfPath,
                                    pdfOpenParams : customParameter,
                                    cid : 'objectBoxPdf'
                                }).embed('boxPdf');
            });

            function rotatePdf(){
                $('#objectBoxPdf').toggleClass('rotate-90');
            }
</script>
</body>
</html>

1 个答案:

答案 0 :(得分:0)

试试这段代码:

$('#button').click(function() {
  $('#example').addClass('rotate-90');
});
.rotate-90 {
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
}

#example {
  width: 400px;
  height: 400px;
  border: 1px solid #000;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.2.3/jquery.min.js"></script>
<div id="example">
  <object width="400px" height="400px" data="pdf.pdf"></object>
</div>
<button id="button">Rotate 90 degrees</button>

注意:将“pdf.pdf”替换为pdf的名称。

基本上这个代码正在做的是告诉页面,当你单击按钮时,它应该将类“rotate-90”附加到元素。 CSS告诉页面任何具有“rotate-90”类的元素应旋转90度。附加类后,元素将旋转90度。

希望这有帮助!